數(shù)字頻率計(jì)測(cè)頻系統(tǒng)的設(shè)計(jì)_第1頁(yè)
數(shù)字頻率計(jì)測(cè)頻系統(tǒng)的設(shè)計(jì)_第2頁(yè)
數(shù)字頻率計(jì)測(cè)頻系統(tǒng)的設(shè)計(jì)_第3頁(yè)
數(shù)字頻率計(jì)測(cè)頻系統(tǒng)的設(shè)計(jì)_第4頁(yè)
數(shù)字頻率計(jì)測(cè)頻系統(tǒng)的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

PAGEPAGE21南京信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文作者學(xué)號(hào)系部電子信息學(xué)院專業(yè)無(wú)線電技術(shù)題目數(shù)字頻率計(jì)測(cè)頻系統(tǒng)的設(shè)計(jì)指導(dǎo)教師評(píng)閱教師完成時(shí)間:2014年3月30日畢業(yè)設(shè)計(jì)(論文)中文摘要(題目):數(shù)字頻率計(jì)測(cè)頻系統(tǒng)的設(shè)計(jì)摘要:100Hz頻率計(jì)數(shù)器主要功能是在一定時(shí)間內(nèi)對(duì)頻率的計(jì)算,本篇論文主要介紹了頻率計(jì)數(shù)器的實(shí)現(xiàn):系統(tǒng)以MAX+PULSLLII為開(kāi)發(fā)環(huán)境,通過(guò)VHDL語(yǔ)言作為硬件描述語(yǔ)言實(shí)現(xiàn)對(duì)電路結(jié)構(gòu)的描述。在VHDL語(yǔ)言中采用了一系列的語(yǔ)句,例如:元件例化、if語(yǔ)句、case、when語(yǔ)句等。并對(duì)程序中的輸入輸出端口進(jìn)行了解釋,給出實(shí)現(xiàn)代碼和仿真波形。關(guān)鍵詞:100Hz頻率計(jì);MAX+PULSLLII;VHDL;元件例化;仿真畢業(yè)設(shè)計(jì)(論文)外文摘要Title:theDesignofdigitalfrequencymetermeasuringfrequencysystemsAbstract:100Hzfrequencycounterisaprimaryfunctionofthefrequencywithinacertainperiodoftimecalculation,thispaperintroducestherealizationoffrequencycounters:thesysteminordertoMAX+PULSLLIIforthedevelopmentoftheenvironment,throughtheVHDLhardwaredescriptionlanguageasalanguageimplementationofthecircuitstructuredescription.VHDLlanguageusedinaseriesofstatements,suchas:componentinstantiation,ifsuchstatementcasewhenstatement.Andprograminputandoutputportsoftheinterpretationgiventoachievethecodeandsimulationwaveforms.keywords:100Hzfrequencycounter;MAX+PULSLLII;VHDL;simulation;componentcases目錄引言 51數(shù)字頻率計(jì)測(cè)頻系統(tǒng)設(shè)計(jì)概述 51.1設(shè)計(jì)要求 51.2設(shè)計(jì)意義 52電路數(shù)字頻率計(jì)測(cè)頻系統(tǒng)設(shè)計(jì)方案 62.1產(chǎn)生子模塊 72.1.1分頻模塊 72.1.2分頻程序及仿真圖 82.2計(jì)數(shù)模塊 92.2.1計(jì)數(shù)模塊分析 92.2.2計(jì)數(shù)模塊程序及仿真圖 102.3顯示模塊 112.3.1七段數(shù)碼管的描述 122.3.2八進(jìn)制計(jì)數(shù)器 142.3.3計(jì)數(shù)位選擇電路 152.4總體功能描述 163電路數(shù)字頻率計(jì)測(cè)頻系統(tǒng)頂層文件 174.結(jié)論 194.1系統(tǒng)缺點(diǎn) 194.2改進(jìn)方法 19致謝 19參考文獻(xiàn) 19附表元件清單 20引言VHDL(VeryHighSpeedIntegratedCircuitHardwareDescriptionLanguage,超高速集成電路硬件描述語(yǔ)言)誕生于1982年,是由美國(guó)國(guó)防部開(kāi)發(fā)的一種快速設(shè)計(jì)電路的工具,目前已經(jīng)成為IEEE(TheInstituteofElectricalandElectronicsEngineers)的一種工業(yè)標(biāo)準(zhǔn)硬件描述語(yǔ)言。相比傳統(tǒng)的電路系統(tǒng)的設(shè)計(jì)方法,VHDL具有多層次描述系統(tǒng)硬件功能的能力,支持自頂向下(ToptoDown)和基于庫(kù)(LibraryBased)的設(shè)計(jì)的特點(diǎn),因此設(shè)計(jì)者可以不必了解硬件結(jié)構(gòu)。從系統(tǒng)設(shè)計(jì)入手,在頂層進(jìn)行系統(tǒng)方框圖的劃分和結(jié)構(gòu)設(shè)計(jì),在方框圖一級(jí)用VHDL對(duì)電路的行為進(jìn)行描述,并進(jìn)行仿真和糾錯(cuò),然后在系統(tǒng)一級(jí)進(jìn)行驗(yàn)證,最后再用邏輯綜合優(yōu)化工具生成具體的門級(jí)邏輯電路的網(wǎng)表,下載到具體的CPLD器件中去,從而實(shí)現(xiàn)可編程的專用集成電路(ASIC)的設(shè)計(jì)。數(shù)字頻率計(jì)是數(shù)字電路中的一個(gè)典型應(yīng)用,實(shí)際的硬件設(shè)計(jì)用到的器件較多,連線比較復(fù)雜,而且會(huì)產(chǎn)生比較大的延時(shí),造成測(cè)量誤差、可靠性差。隨著復(fù)雜可編程邏輯器件(CPLD)的廣泛應(yīng)用,以EDA工具作為開(kāi)發(fā)手段,運(yùn)用VHDL語(yǔ)言。將使整個(gè)系統(tǒng)大大簡(jiǎn)化。提高整體的性能和可靠性。

本文用VHDL在CPLD器件上實(shí)現(xiàn)一種2b數(shù)字頻率計(jì)測(cè)頻系統(tǒng),能夠用十進(jìn)制數(shù)碼顯示被測(cè)信號(hào)的頻率,不僅能夠測(cè)量正弦波、方波和三角波等信號(hào)的頻率,而且還能對(duì)其他多種物理量進(jìn)行測(cè)量。具有體積小、可靠性高、功耗低的特點(diǎn)。1數(shù)字頻率計(jì)測(cè)頻系統(tǒng)設(shè)計(jì)概述1.1設(shè)計(jì)要求獲得穩(wěn)定100Hz頻率用數(shù)碼管的顯示用VHDL寫出設(shè)計(jì)整個(gè)程序1.2設(shè)計(jì)意義進(jìn)一步學(xué)習(xí)VHDL硬件描述語(yǔ)言的編程方法和步驟。運(yùn)用VHDL硬件描述語(yǔ)言實(shí)現(xiàn)對(duì)電子元器件的功能控制。熟悉并掌握元件例化語(yǔ)句的使用方法。熟悉數(shù)字式頻率的基本工作原理。熟悉數(shù)字頻率計(jì)中計(jì)數(shù)顯示設(shè)計(jì)。熟悉掌握MAX+PLUSⅡ軟件的基本使用方法。2電路數(shù)字頻率計(jì)測(cè)頻系統(tǒng)設(shè)計(jì)方案眾所周知,頻率信號(hào)易于傳輸,抗干擾性強(qiáng),可以獲得較好的測(cè)量精度。因此,頻率檢測(cè)是電子測(cè)量領(lǐng)域最基本的測(cè)量之一。頻率計(jì)的基本原理是用一個(gè)頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時(shí)鐘,對(duì)比測(cè)量其他信號(hào)的頻率。通常情況下計(jì)算每秒內(nèi)待測(cè)信號(hào)的脈沖個(gè)數(shù),即閘門時(shí)間為1s。閘門時(shí)間可以根據(jù)需要取值,大于或小于1s都可以。閘門時(shí)間越長(zhǎng),得到的頻率值就越準(zhǔn)確,但閘門時(shí)間越長(zhǎng),則每測(cè)一次頻率的間隔就越長(zhǎng)。閘門時(shí)間越短,測(cè)得的頻率值刷新就越快,但測(cè)得的頻率精度就受影響。一般取1s作為閘門時(shí)間。數(shù)字頻率計(jì)的關(guān)鍵組成部分包括測(cè)頻控制信號(hào)發(fā)生器、計(jì)數(shù)器、鎖存器、譯碼驅(qū)動(dòng)電路和顯示電路,其原理框圖如圖2-1所示。圖2-1數(shù)字頻率計(jì)原理框圖在這個(gè)100赫茲頻率計(jì)的設(shè)計(jì)中一共分為3大模塊:產(chǎn)生子模塊、計(jì)數(shù)模塊、顯示模塊。當(dāng)系統(tǒng)正常工作時(shí),脈沖發(fā)生器提供的1Hz的輸入信號(hào),進(jìn)行信號(hào)的變換,產(chǎn)生計(jì)數(shù)信號(hào),被測(cè)信號(hào)通過(guò)信號(hào)整形電路產(chǎn)生同頻率的矩形波,送入計(jì)數(shù)模塊,計(jì)數(shù)模塊對(duì)輸入的矩形波進(jìn)行計(jì)數(shù),將計(jì)數(shù)結(jié)果送入鎖存器中,保證系統(tǒng)可以穩(wěn)定顯示數(shù)據(jù),顯示譯碼驅(qū)動(dòng)電路將二進(jìn)制表示的計(jì)數(shù)結(jié)果轉(zhuǎn)換成相應(yīng)的能夠在七段數(shù)碼顯示管上可以顯示的十進(jìn)制結(jié)果。在數(shù)碼顯示管上可以看到計(jì)數(shù)結(jié)果產(chǎn)生子模塊是為此100赫茲頻率計(jì)提供1Hz的時(shí)鐘脈沖信號(hào),為了實(shí)現(xiàn)嚴(yán)格的同步,在這個(gè)模塊中采用了同步計(jì)數(shù)電路。計(jì)數(shù)模塊是實(shí)現(xiàn)從0到99的計(jì)數(shù)。顯示模塊是將計(jì)數(shù)模塊程序中產(chǎn)生的數(shù)值通過(guò)2個(gè)七段數(shù)碼管表達(dá)出來(lái),使大家對(duì)此頻率計(jì)有一個(gè)更直觀的認(rèn)識(shí)。此100赫茲頻率計(jì)的設(shè)計(jì)中,這3個(gè)大的模塊是核心部分,這個(gè)3個(gè)大的模塊會(huì)在后面的分析設(shè)計(jì)中給出詳細(xì)的介紹。頻率計(jì)的工作原理是通過(guò)在一定時(shí)間內(nèi)對(duì)外部信號(hào)進(jìn)行計(jì)數(shù),計(jì)算計(jì)數(shù)值對(duì)時(shí)間的比值,從而得到輸入信號(hào)的頻率,通過(guò)二個(gè)數(shù)碼管作為頻率值的輸出。對(duì)系統(tǒng)進(jìn)行分析后,確定采用模塊設(shè)計(jì),基本框架圖如圖2-2所示。圖2-2頻率計(jì)設(shè)計(jì)基本框架圖2.1產(chǎn)生子模塊2.1.1分頻模塊分頻模塊的功能是將輸入的外部信號(hào)clk進(jìn)行分頻,分頻成計(jì)數(shù)器所需要的計(jì)數(shù)信號(hào),使計(jì)數(shù)器在計(jì)數(shù)信號(hào)有效的時(shí)間對(duì)外部信號(hào)進(jìn)行計(jì)數(shù)。根據(jù)頻率計(jì)測(cè)量的范圍,確定了分頻至1Hz,從而得到頻率值。555定時(shí)器(如圖2-3)是一種模擬電路與數(shù)字電路相結(jié)合的中規(guī)模集成電路,它在信號(hào)產(chǎn)生、整形、延時(shí)(定時(shí))、控制等方面獲得了廣泛的應(yīng)用。雖說(shuō)555定時(shí)器應(yīng)用領(lǐng)域十分廣泛,但其電路結(jié)構(gòu)歸納起來(lái)有三種基本形式,即多諧振蕩器、單穩(wěn)態(tài)觸發(fā)器、施密特觸發(fā)器。圖2-3555定時(shí)器電路由于雙極型555和CMOS型555的制作工藝和流程不同,生產(chǎn)出的555集成電路的性能指標(biāo)是有差異的。CMOS型555的功耗僅為雙極型的幾十分之一,靜態(tài)電流僅為300uA左右,為微功耗電路。CMOS型555的輸出脈沖的上升沿和下降沿比雙極型的要陡,轉(zhuǎn)換時(shí)間短。CMOS型555的在傳輸過(guò)度時(shí)間里產(chǎn)生的尖峰電流小,僅為2~3mA,而雙極型555的尖峰電流高達(dá)300~400mA。2.1.2分頻程序及仿真圖分頻程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYclk_div1000ISPORT(clk:INSTD_LOGIC;clk_div:outSTD_LOGIC);ENDclk_div1000;ARCHITECTURErt1OFclk_div1000ISSIGNALq_tmp:integerrange0to999;BEGINprocess(clk)beginIF(clk'eventandclk='1')thenif(q_tmp=999)thenq_tmp<=0;elseq_tmp<=q_tmp+1;endif;endif;endprocess;process(clk)beginIF(clk'eventandclk='1')thenif(q_tmp=999)thenclk_div<='1';elseclk_div<='0';endif;endif;endprocess;endrt1;在以上程序中我們將外部信號(hào)clk進(jìn)行10次分頻輸入信號(hào)為clk,輸出信號(hào)為clk_div。編譯通過(guò)后,產(chǎn)生的符號(hào)如圖2-4所示,仿真波形圖如圖2-5所示。圖2-4分頻模塊圖圖2-5分頻仿真圖2.2計(jì)數(shù)模塊2.2.1計(jì)數(shù)模塊分析經(jīng)分析可知,此頻率計(jì)計(jì)數(shù)模塊分為2個(gè)子模塊,即個(gè)位顯示模塊、十位顯示模塊。詳細(xì)分析如下:①計(jì)數(shù)模塊的個(gè)位可以用1個(gè)十進(jìn)制計(jì)數(shù)器表示。②計(jì)數(shù)模塊的十位可以用1個(gè)十進(jìn)制計(jì)數(shù)器表示。頻率計(jì)的計(jì)數(shù)模塊主要來(lái)實(shí)現(xiàn)頻率計(jì)數(shù)器內(nèi)部的計(jì)數(shù)功能,計(jì)數(shù)器的內(nèi)部計(jì)數(shù)信號(hào)clk和頻率計(jì)數(shù)器的使能信號(hào)enable。頻率計(jì)數(shù)器的計(jì)數(shù)模塊的輸出信號(hào)就是個(gè)位sec、十位sec10。電路圖如圖2-6所示。圖2-6計(jì)數(shù)模塊電路圖十進(jìn)制計(jì)數(shù)器,它的輸入端口主要包括使能端口enable計(jì)數(shù)輸入端口clk,輸出端口主要包括計(jì)數(shù)輸出端口q和進(jìn)位輸出端口cout。2.2.2計(jì)數(shù)模塊程序及仿真圖計(jì)數(shù)模塊的程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYcount10ISPORT(enable:INSTD_LOGIC;clk:INSTD_LOGIC;cout:outSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDcount10;ARCHITECTURErt1OFcount10ISSIGNALq_tmp:STD_LOGIC_VECTOR(3DOWNTO0);BEGINprocess(clk)beginIF(clk'eventandclk='1')thenif(enable='1')thenif(q_tmp="1001")thenq_tmp<="0000";elseq_tmp<=q_tmp+1;endif;endif;endif;q<=q_tmp;endprocess;cout<='1'whenq_tmp="1001"andenable='1'else'0';endrt1;描述了上述的十進(jìn)制計(jì)數(shù)器后,我們就可以根據(jù)圖三所示的結(jié)構(gòu)框圖來(lái)進(jìn)行頻率計(jì)數(shù)器計(jì)數(shù)模塊的VHDL描述了。在頻率計(jì)數(shù)器計(jì)數(shù)模塊的VHDL描述中,我們引用元件的形式調(diào)用上面描述的十進(jìn)制計(jì)數(shù)器。從而得到頻率計(jì)數(shù)器的計(jì)數(shù)功能,程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYtime_counterISPORT(enable:INSTD_LOGIC;clk0:INSTD_LOGIC;sec10:OUTSTD_LOGIC_VECTOR(3DOWNTO0);sec:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDtime_counter;ARCHITECTURErt1OFtime_counterISCOMPONENTcount10PORT(enable:INSTD_LOGIC;clk:INSTD_LOGIC;cout:outSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));endCOMPONENT;SIGNALco1,co2:STD_LOGIC;BEGINU1:count10PORTMAP(enable,clk0,co1,sec);U2:count10PORTMAP(co1,clk0,co2,sec10);endrt1;編譯通過(guò)后,產(chǎn)生的符號(hào)如圖2-7所示,仿真波形圖如圖2-8所示。圖2-7計(jì)數(shù)模塊圖圖2-8計(jì)數(shù)模塊的仿真波形圖2.3顯示模塊有了計(jì)數(shù)模塊還不能滿足設(shè)計(jì)的要求,任何一個(gè)設(shè)計(jì)都是需要一定的硬件設(shè)備來(lái)表達(dá)。否則,只有一個(gè)理論的程序是不足以來(lái)證明一個(gè)設(shè)計(jì)的完整性。在參考一些資料和根據(jù)實(shí)驗(yàn)提供的條件,我在這個(gè)設(shè)計(jì)中采用2個(gè)七段數(shù)碼管來(lái)對(duì)這個(gè)頻率計(jì)進(jìn)行實(shí)際的表達(dá)。頻率計(jì)數(shù)器要將計(jì)數(shù)的結(jié)果顯示出來(lái),就必需設(shè)計(jì)一個(gè)計(jì)數(shù)顯示模塊來(lái)完成該顯示功能。頻頻計(jì)數(shù)器的顯示模塊的輸入信號(hào)主要來(lái)自于頻頻計(jì)數(shù)器計(jì)數(shù)模塊的計(jì)數(shù)信息,它的輸出信號(hào)是choose和segment,以用來(lái)驅(qū)動(dòng)計(jì)數(shù)顯示的8個(gè)LED七段顯示數(shù)碼管,在輸出信號(hào)中,為了節(jié)省資源,我們采用循環(huán)點(diǎn)亮LED七段顯示數(shù)碼管的方法來(lái)顯示頻率計(jì)數(shù)器的計(jì)數(shù)輸出.我們通過(guò)信號(hào)choose(7downto0)來(lái)進(jìn)行8個(gè)LED七段顯示數(shù)碼管的選擇,從而將輸出信號(hào)segment(6downto0)送到相應(yīng)的LED七段顯示數(shù)碼管上以完成頻率計(jì)數(shù)的顯示。計(jì)數(shù)顯示模塊的結(jié)構(gòu)框圖如圖2-9所示:圖2-9顯示模塊電路圖從圖2-9以看出,計(jì)數(shù)顯示模塊可由三個(gè)部分組成:八進(jìn)制計(jì)數(shù)器、計(jì)數(shù)位選擇電路、七段顯示譯碼電路。下面描述一下計(jì)數(shù)顯示模塊的工作過(guò)程:在外部計(jì)數(shù)信號(hào)clk的作用下,八進(jìn)制計(jì)數(shù)器的輸出從000到111按順序循環(huán)變化,輸出信號(hào)為sel。信號(hào)sel作為計(jì)數(shù)位選擇電路的選擇信號(hào),用來(lái)選擇對(duì)應(yīng)位的數(shù)據(jù)并將其轉(zhuǎn)換為四位位矢量。最后將計(jì)數(shù)位選擇電路的輸出信號(hào)q送到七段顯示譯碼電路的輸入端口,將其轉(zhuǎn)化成用來(lái)點(diǎn)燃LED七段顯示數(shù)碼管的segment信。2.3.1七段數(shù)碼管的描述我們所使用實(shí)驗(yàn)箱中的8個(gè)七段數(shù)碼管有這樣一個(gè)特點(diǎn),8個(gè)數(shù)碼管中每一個(gè)數(shù)碼管中相同的段都是連在一根線上的。如圖2-10所示:圖2-10七段數(shù)碼管故只要有一個(gè)數(shù)碼管的一段亮,8個(gè)數(shù)碼管中相同的段都會(huì)亮。在選用數(shù)碼管后我們需要考慮一個(gè)問(wèn)題,就是如何在每個(gè)數(shù)碼管上正確的顯示程序中每一位要顯示的數(shù)據(jù),也就是如何將前面的計(jì)數(shù)模塊中要顯示的數(shù)字準(zhǔn)確的表達(dá)在數(shù)碼管上。在這里就運(yùn)用了人體生理學(xué)的一個(gè)結(jié)論,人的眼睛能分辨的時(shí)間是1/16秒,即頻率為25Hz左右。有了這個(gè)結(jié)論后,我們就可以解決正確顯示的問(wèn)題了,應(yīng)用動(dòng)態(tài)掃描的方法,只要我們?cè)陲@示模塊中所使用的頻率大于25Hz就可以讓每個(gè)數(shù)碼管正確的顯示程序中所要求的數(shù)字了。因此,在顯示模塊中首先要設(shè)計(jì)一個(gè)分頻器,實(shí)驗(yàn)提供的脈沖是1KHz,我們只要設(shè)計(jì)的分頻器所分出來(lái)的頻率大于25Hz即可,在此我選擇一個(gè)8分頻器。8分頻器的輸入信號(hào)為clk,輸出信號(hào)為sel(2DOWNTO0)。顯示模塊中數(shù)字位選的問(wèn)題解決后就需要解決另外一個(gè)問(wèn)題了,那就是如何將程序中的數(shù)字在數(shù)碼管上有效顯示出來(lái),即如何讓我們能一眼就看出來(lái)顯示的數(shù)字是0、1、2、3、4、5、6、7、8、9這十個(gè)數(shù)字。根據(jù)數(shù)碼的結(jié)構(gòu)特點(diǎn),我們采用高低電平的方法點(diǎn)亮數(shù)碼管對(duì)應(yīng)的段即可。七段數(shù)碼管的顯示結(jié)構(gòu)如圖2-11所示:圖2-11數(shù)碼管管腳圖表2-1詳細(xì)的列出了0、1、2、3、4、5、6、7、8、9這十個(gè)數(shù)與七段數(shù)碼管的對(duì)應(yīng)關(guān)系。表2-17段數(shù)碼管的顯示關(guān)系段數(shù)字abcdefg01111110101100002110110131111001401100115101101161011011711100008111111191111011有了這樣的分析后,數(shù)字顯示的問(wèn)題就解決了。另外,為了使程序能和硬件(七段數(shù)碼管)能有效的結(jié)合起來(lái),還需要一個(gè)3-8譯碼器在中間架起一個(gè)“橋梁”。七段數(shù)碼管的選擇模塊程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYseg7ISPORT(q:INSTD_LOGIC_VECTOR(3DOWNTO0);segment:OUTSTD_LOGIC_VECTOR(6DOWNTO0));ENDseg7;ARCHITECTURErt1OFseg7ISBEGINPROCESS(q)BEGINCASEqISWHEN"0000"=>segment<="0111111";WHEN"0001"=>segment<="0000110";WHEN"0010"=>segment<="1011011";WHEN"0011"=>segment<="1001111";WHEN"0100"=>segment<="1100110";WHEN"0101"=>segment<="1101101";WHEN"0110"=>segment<="1111101";WHEN"0111"=>segment<="0100111";WHEN"1000"=>segment<="1111111";WHEN"1001"=>segment<="1101111";WHENOTHERS=>segment<="XXXXXXX";ENDCASE;ENDPROCESS;ENDrt1;2.3.2八進(jìn)制計(jì)數(shù)器我們來(lái)描述下三個(gè)子電路,然后再描述顯示模塊的總體功能。先來(lái)討論下八進(jìn)制計(jì)數(shù)器count8,這個(gè)八進(jìn)制計(jì)數(shù)器除了沒(méi)有使能端enable和進(jìn)位輸出端口cout之外,它的描述結(jié)構(gòu)與前面描述的計(jì)數(shù)器的結(jié)構(gòu)完全相同,用VHDL描述如下:八進(jìn)制計(jì)數(shù)器模塊設(shè)計(jì)程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYcount8ISPORT(clk:INSTD_LOGIC;sel:OUTSTD_LOGIC_VECTOR(2DOWNTO0));ENDcount8;ARCHITECTURErt1OFcount8ISSIGNALsel_tmp:STD_LOGIC_VECTOR(2DOWNTO0);BEGINprocess(clk)beginIF(clk'eventandclk='1')thenif(sel_tmp="111")thensel_tmp<=(others=>'0');elsesel_tmp<=sel_tmp+1;endif;endif;sel<=sel_tmp;endprocess;endrt1;2.3.3計(jì)數(shù)位選擇電路計(jì)數(shù)位選擇電路的功能示根據(jù)八進(jìn)制計(jì)數(shù)器count8輸出的選擇信號(hào)sel來(lái)選擇對(duì)應(yīng)顯示位的計(jì)數(shù)數(shù)據(jù),作為送到七段顯示譯碼電路的輸入數(shù)據(jù)。由于計(jì)數(shù)選擇電路的輸出端口的計(jì)數(shù)數(shù)據(jù)的位數(shù)不等,而七段顯示譯碼電路的輸入端口接收四位寬度的數(shù)據(jù)。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYtime_chooseISPORT(sel:INSTD_LOGIC_VECTOR(2DOWNTO0);sec10:INSTD_LOGIC_VECTOR(3DOWNTO0);sec:INSTD_LOGIC_VECTOR(3DOWNTO0);q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDtime_choose;ARCHITECTURErt1OFtime_chooseISBEGINPROCESS(sel,sec10,sec)BEGINCASEselISWHEN"000"=>q<=sec;WHEN"001"=>q<=sec10;WHENOTHERS=>q<="XXXX";ENDCASE;ENDPROCESS;ENDrt1;2.4總體功能描述對(duì)計(jì)數(shù)器的顯示模塊的四個(gè)子電路描述以后,我們就可以進(jìn)行計(jì)數(shù)器的總體功能描述了。在計(jì)數(shù)器顯示模塊的VHDL描述中,我們引用元件的形式來(lái)調(diào)用上面描述過(guò)的四個(gè)子電路,秒表顯示模塊的VHDL描述如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYdisplayISPORT(clk:INSTD_LOGIC;sec10:INSTD_LOGIC_VECTOR(3DOWNTO0);sec:INSTD_LOGIC_VECTOR(3DOWNTO0);sel:OUTSTD_LOGIC_VECTOR(2DOWNTO0);segment:OUTSTD_LOGIC_VECTOR(6DOWNTO0));ENDdisplay;ARCHITECTURErt1OFdisplayISCOMPONENTcount8PORT(clk:INSTD_LOGIC;sel:OUTSTD_LOGIC_VECTOR(2DOWNTO0));ENDCOMPONENT;COMPONENTtime_choosePORT(sel:INSTD_LOGIC_VECTOR(2DOWNTO0);sec10:INSTD_LOGIC_VECTOR(3DOWNTO0);sec:INSTD_LOGIC_VECTOR(3DOWNTO0);q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDCOMPONENT;COMPONENTseg7PORT(q:INSTD_LOGIC_VECTOR(3DOWNTO0);segment:OUTSTD_LOGIC_VECTOR(6DOWNTO0));ENDCOMPONENT;SIGNALsel_tmp:STD_LOGIC_VECTOR(2DOWNTO0);SIGNALq:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALsegment_tmp:STD_LOGIC_VECTOR(6DOWNTO0);BEGINU0:count8PORTMAP(clk,sel_tmp);sel<=sel_tmp;U2:time_choosePORTMAP(sel_tmp,sec10,sec,q);U3:seg7PORTMAP(q,segment_tmp);segment<=segment_tmp;ENDrt1;編譯通過(guò)后,生成的符號(hào)如圖2-12所示,仿真波形圖如圖2-13所示。圖2-12顯示模塊圖12顯示模塊的仿真波形圖圖2-13顯示模塊的仿真波形圖3電路數(shù)字頻率計(jì)測(cè)頻系統(tǒng)頂層文件前一章是整個(gè)設(shè)計(jì)的3個(gè)核心模塊,當(dāng)這3個(gè)模塊設(shè)計(jì)完成后,100赫茲的頻率計(jì)的設(shè)計(jì)就接近尾聲了。剩下的工作也就好做了,我們就像連接模擬電路中元件一樣,將這3個(gè)模塊對(duì)應(yīng)的端口連接起來(lái)進(jìn)行調(diào)試即可。整個(gè)設(shè)計(jì)我們都是用的VHDL硬件描述語(yǔ)言來(lái)完成的,所以到了最后也不例外,對(duì)于最后的級(jí)連同運(yùn)用元件例化的格式來(lái)“組裝”整個(gè)設(shè)計(jì)。頂層文件設(shè)計(jì)程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYclockISPORT(clk:INSTD_LOGIC;enable:INSTD_LOGIC;sel:OUTSTD_LOGIC_VECTOR(2DOWNTO0);segment:OUTSTD_LOGIC_VECTOR(6DOWNTO0));ENDclock;ARCHITECTURErt1OFclockISCOMPONENTclk_div1000PORT(clk:INSTD_LOGIC;clk_div:outSTD_LOGIC);endcomponent;componenttime_counterPORT(enable:INSTD_LOGIC;clk0:INSTD_LOGIC;sec10:OUTSTD_LOGIC_VECTOR(3DOWNTO0);sec:OUTSTD_LOGIC_VECTOR(3DOWNTO0));endcomponent;componentdisplayPORT(clk:INSTD_LOGIC;sec10:INSTD_LOGIC_VECTOR(3DOWNTO0);sec:INSTD_LOGIC_VECTOR(3DOWNTO0);sel:outSTD_LOGIC_VECTOR(2DOWNTO0);segment:OUTSTD_LOGIC_VECTOR(6DOWNTO0));endcomponent;signalsec10:STD_LOGIC_VECTOR(3DOWNTO0);signalsec:STD_LOGIC_VECTOR(3DOWNTO0);signalclk0:STD_LOGIC;beginu0:clk_div1000PORTMAP(clk,clk0);u1:time_counterPORTMAP(enable,clk0,sec10,sec);u2:displayPORTMAP(clk,sec10,sec,sel,segment);endrt1;編譯通過(guò)后,生成的符號(hào)如圖3-1所示,仿真波形圖如圖3-2所示。圖3-1頂層設(shè)計(jì)符號(hào)圖圖3-2頂層設(shè)計(jì)仿真波形圖4.結(jié)論4.1系統(tǒng)缺點(diǎn)首先本設(shè)計(jì)的頻率計(jì)的測(cè)量范圍不大,在1HZ—10HZ之間,面目前的高端頻率計(jì)最小可以測(cè)量到0.001HZ,最大可以到幾G,甚至可以達(dá)到更高。本設(shè)計(jì)的電路是比較傳統(tǒng)的電路,沒(méi)有采用先進(jìn)的高端芯片,使測(cè)量的范圍和精度都受到很大的限制,對(duì)測(cè)量范圍以外的頻率有較低測(cè)量精度,甚至無(wú)法測(cè)量。而且輸入電壓也有一定的限制。4.2改進(jìn)方法本設(shè)計(jì)的頻率在低頻段不夠精確,如采用等精度測(cè)量,經(jīng)浮點(diǎn)數(shù)的數(shù)學(xué)運(yùn)算,可滿足精度與刷新時(shí)間的要求。在整形階段可以更好的波形整形電路,可以更好的提高輸入電壓的輸入范圍,而不需要其它匹配與保護(hù)電路,可以直接測(cè)量較高的電壓。分頻環(huán)節(jié)也可以用較先進(jìn)的FPGA芯片,更好的提高分頻的范圍和分頻的質(zhì)量。致謝在論文完成之際,我由衷地感謝崔老師的指導(dǎo)和關(guān)心。這一年來(lái),崔老師對(duì)我的學(xué)習(xí)和研究非常嚴(yán)格,并給予了悉心的指導(dǎo),使我受益菲淺。對(duì)我的學(xué)習(xí)提出了很多寶貴的意見(jiàn),使我的學(xué)習(xí)有了目標(biāo)和方向,并得以不斷提高,而且這些課題的研究成果也成為了本論文的主要素材。同時(shí),崔老師淵博的學(xué)識(shí)、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度也令我十分敬佩,是我以后學(xué)習(xí)和工作的榜樣。再次感謝參考文獻(xiàn)1辛春艷.《VHDL硬件描述語(yǔ)言》.國(guó)防工業(yè)出版社2歐陽(yáng)星明.《數(shù)字邏輯》.華中科技大學(xué)出版社3齊洪喜,陸穎.《VHDL電路設(shè)計(jì)實(shí)用教材》.清華大學(xué)出版社4譚會(huì)生,瞿遂春.《EDA技術(shù)綜合應(yīng)用實(shí)例與分析》.西安電子科技大學(xué)出版社5譚會(huì)生,張昌凡.《EDA技術(shù)應(yīng)用》.西安電子科技大學(xué)出版社6馮濤,王程.《可編程邏輯器件開(kāi)發(fā)技術(shù)--Maxplus2入門與提高》.人民郵電出版社7盧毅,賴杰.《VHDL與數(shù)字電路設(shè)計(jì)》.科學(xué)出版社附表元件清單HK—VI系統(tǒng)結(jié)構(gòu)圖信號(hào)名與芯片引腳對(duì)照表硬件資源EPM1K30引腳序號(hào)元件引腳電路使用說(shuō)明LED數(shù)碼顯示A144該部分電路為固定電路。使用LED數(shù)碼顯示時(shí)請(qǐng)按照器件引腳分配后再下載到芯片中。B8C9D10E12F13G17DP74LS138S1101S2102S3117頻率源CLK155使用時(shí)將相應(yīng)短跳針短路即可。CLK256CLK3119CLK424CLK5125開(kāi)關(guān)1SW132該部分電路為可選用電路,使用時(shí)請(qǐng)把JP103的短路帽全部插上,然后再按照器件引腳分配表進(jìn)行引腳分配。SW233SW336SW437SW538SW641SW743SW845管腳分配:clk(119)enable(32)sel0:(101)sel1(102)sel2(117)segment0(114)segment1(8)segment2(9)segment3(10)segment4(12)segment5(13)segment6(17)目錄TOC\o"1-2"\h\z第一章項(xiàng)目的意義和必要性 11.1項(xiàng)目名稱及承辦單位 11.2項(xiàng)目編制的依據(jù) 11.3肺寧系列產(chǎn)品的國(guó)內(nèi)外現(xiàn)狀 21.4產(chǎn)業(yè)關(guān)聯(lián)度分析 31.5項(xiàng)目的市場(chǎng)分析 4第二章項(xiàng)目前期的技術(shù)基礎(chǔ) 82.1成果來(lái)源及知識(shí)產(chǎn)權(quán)情況,已完成的研發(fā)工作 82.3產(chǎn)品臨床試驗(yàn)的安全性和有效性 8第三章建設(shè)方案 233.1建設(shè)規(guī)模 233.2建設(shè)內(nèi)容 233.3產(chǎn)品工藝技術(shù) 233.5產(chǎn)品質(zhì)量標(biāo)準(zhǔn) 293.6土建工程 373.7主要技術(shù)經(jīng)濟(jì)指標(biāo) 39第四章建設(shè)內(nèi)容、地點(diǎn) 414.1建設(shè)內(nèi)容及建設(shè)規(guī)模 414.2建設(shè)地點(diǎn) 414.3外部配套情況 44第五章環(huán)境保護(hù)、消防、節(jié)能 465.1環(huán)境保護(hù) 465.2消防 495.3節(jié)能 50第六章原材料供應(yīng)及外部配套條件落實(shí)情況

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論