




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、基于VerilogHDL數(shù)字頻率計(jì)設(shè)計(jì)與實(shí)現(xiàn)課程設(shè)計(jì)任務(wù)書學(xué)院:計(jì)算機(jī)與通信工程學(xué)院專業(yè):網(wǎng)絡(luò)工程專業(yè)課程名稱計(jì)算機(jī)組成原埋課程設(shè)計(jì)時(shí)間20102011學(xué)年第一學(xué)期1718周學(xué)生XX郭祥斌指導(dǎo)教師陳沅濤題目主要內(nèi)容:1數(shù)字頻率計(jì)前端信號的放大整形處理2數(shù)字頻率計(jì)的VerilogHDL設(shè)計(jì)實(shí)現(xiàn)3數(shù)字頻率計(jì)的CPLD/FPGA制作要求:1通過對相應(yīng)文獻(xiàn)的收集、分析以及總結(jié),給出相應(yīng)課題的背景、意義及現(xiàn)狀研究分析。2通過課題設(shè)計(jì),掌握計(jì)算機(jī)組成原理的分析方法和設(shè)計(jì)方法。3學(xué)按要求編寫課程設(shè)計(jì)報(bào)告書,能正確闡述設(shè)計(jì)和實(shí)驗(yàn)結(jié)果。4學(xué)生應(yīng)抱著嚴(yán)謹(jǐn)認(rèn)真的態(tài)度積極投入到課程設(shè)計(jì)過程中,認(rèn)真查閱相應(yīng)文獻(xiàn)以及實(shí)現(xiàn)
2、,給出個(gè)人分析、設(shè)計(jì)以及實(shí)現(xiàn)。應(yīng)當(dāng)提交的文件:1課程設(shè)計(jì)報(bào)告。2課程設(shè)計(jì)附件主要是源程序課程設(shè)計(jì)成績評定學(xué)院計(jì)算機(jī)通信工程專業(yè)網(wǎng)絡(luò)工程班級網(wǎng)絡(luò)08-02班學(xué)號3學(xué)生XX郭祥斌指導(dǎo)教師陳沅濤課程成績完成日期2010年12月31日指導(dǎo)教師對學(xué)生在課程設(shè)計(jì)中的評價(jià)評分工程優(yōu)良中及格不及格課程設(shè)計(jì)中的創(chuàng)造性成果學(xué)生掌握課程內(nèi)容的程度課程設(shè)計(jì)完成情況課程設(shè)計(jì)動(dòng)手能力文字表達(dá)學(xué)習(xí)態(tài)度規(guī)X要求課程設(shè)計(jì)論文的質(zhì)量指導(dǎo)教師對課程設(shè)計(jì)的評定意見綜合成績指導(dǎo)教師簽字年 月日基于VerilogHDL數(shù)字頻率計(jì)設(shè)計(jì)與實(shí)現(xiàn)學(xué)生:郭祥斌指導(dǎo)教師:陳沅濤摘要:在電子技術(shù)中,頻率是最根本的參數(shù)之一,并且與許多電參量的測量方案、
3、測量結(jié)果都有十分密切的關(guān)系,因此頻率的測量就顯得更為重要。測量頻率的方法有多種,其中電子計(jì)數(shù)器測量頻率具有精度高、使用方便、測量迅速,以及便于實(shí)現(xiàn)測量過程自動(dòng)化等優(yōu)點(diǎn),是頻率測量的重要手段之一。電子計(jì)數(shù)器測頻有兩種方式:一是直接測頻法,即在一定閘門時(shí)間內(nèi)測量被測信號的脈沖個(gè)數(shù);二是間接測頻法,如周期測頻法。直接測頻法適用于高頻信號的頻率測量,間接測頻法適用于低頻信號的頻率測量。本文闡述了用VerilogHDL語言設(shè)計(jì)了一個(gè)簡單的數(shù)字頻率計(jì)的過程關(guān)鍵詞:周期;EDA;VerilogHDL;數(shù)字頻率計(jì);波形仿真目錄1 引言-.5.-1.1 數(shù)字頻率計(jì)概述-.6.-1.2 頻率測量的思想和方法-.7
4、.-2 VerilogHDL簡介-.9.-2.1 VerilogHDL的簡介-.9.-3 數(shù)字頻率計(jì)系統(tǒng)框圖-.1.0.-3.1 數(shù)字頻率計(jì)系統(tǒng)框圖-.1.0.-.3.2 數(shù)字頻率計(jì)系統(tǒng)部件簡介-.1.1.-.4 基于VerilogHDL數(shù)字頻率計(jì)程序設(shè)計(jì)-.1.2.-.4.1 數(shù)字頻率計(jì)系統(tǒng)模塊劃分構(gòu)造-.1.2.-.4.2 計(jì)數(shù)模塊counter-.1.3.-4.3 門控模塊gate_contro.l-.1.5.-.4.4 分頻模塊fdiv-.1.8.-4.5 存放器模塊flip_latch-.2.1.-.4.6 多路選擇模塊data_mux-.2.3.-.4.7 動(dòng)態(tài)位選模塊dispse
5、lec.t-.2.6.-4.8 BCD譯碼模塊dispdecoder-.27.4.9 頂層電路top-.3.2.-5 總結(jié)-.3.6.-.參考文獻(xiàn)-.3.7.-.1引言在電子測量領(lǐng)域中,頻率測量的準(zhǔn)確度是最高的,可達(dá)1010E-13數(shù)量級。PH值、振動(dòng)、位移、速度、加速度,乃至各種氣體的百分比成分等均用傳感器轉(zhuǎn)換成信號頻率,然后用數(shù)字頻率計(jì)來測量,以提高準(zhǔn)確度。國際上數(shù)字頻率計(jì)的分類很多。按功能分類,測量某種單一功能的計(jì)數(shù)器。如頻率計(jì)數(shù)器,只能專門用來測量高頻和微波頻率;時(shí)間計(jì)數(shù)器,是以測量時(shí)間為根底的計(jì)數(shù)器,其測時(shí)分辨力和準(zhǔn)確度很高,可達(dá)ns數(shù)量級;特種計(jì)數(shù)器,它具有特種功能,如可逆計(jì)數(shù)器、
6、予置計(jì)數(shù)器、差值計(jì)數(shù)器、倒數(shù)計(jì)數(shù)器等,用于工業(yè)和白控技術(shù)等方面。數(shù)字頻率計(jì)按頻段分類(1X氐速計(jì)數(shù)器:最高計(jì)數(shù)頻率10MHz;(2)中速計(jì)數(shù)器:最高計(jì)數(shù)頻率1A100MHz;(3)高速計(jì)數(shù)器:最高計(jì)數(shù)頻率100MHz;(4滿波頻率計(jì)數(shù)器:測頻X圍180GHz或更高。單片機(jī)自問世以來,性能不斷提高和完善,其資源又能滿足很多應(yīng)用場合的需要,加之單片機(jī)具有集成度高、功能強(qiáng)、速度快、體積小、功耗低、使用方便、價(jià)格低廉等特點(diǎn),因此,在工業(yè)控制、智能儀器儀表、數(shù)據(jù)采集和處理、通信系統(tǒng)、高級計(jì)算器、家用電器等領(lǐng)域的應(yīng)用日益廣泛,并且正在逐步取代現(xiàn)有的多片微機(jī)應(yīng)用系統(tǒng)。單片機(jī)的潛力越來越被人們所重視。特別是當(dāng)
7、前用CMOS工藝制成的各種單片機(jī),由于功耗低,使用的溫度X圍大,抗干擾能力強(qiáng)、能滿足一些特殊要求的應(yīng)用場合,更加擴(kuò)大了單片機(jī)的應(yīng)用X圍,也進(jìn)一步促使單片機(jī)性能的開展。1.1 數(shù)字頻率計(jì)概述頻率計(jì)的根本原理是用一個(gè)頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時(shí)鐘,比照測量其他信號的頻率。通常情況下計(jì)算每秒內(nèi)待測信號的脈沖個(gè)數(shù),此時(shí)我們稱閘門時(shí)間為1秒。閘門時(shí)間也可以大于或小于一秒。閘門時(shí)間越長,得到的頻率值就越準(zhǔn)確,但閘門時(shí)間越長那么每測一次頻率的間隔就越長。閘門時(shí)間越短,測的頻率值刷新就越快,但測得的頻率精度就受影響。本文數(shù)字頻率計(jì)是用數(shù)字顯示被測信號頻率的儀器,被測信號可以是正弦波,方波或其它周期性變化的信
8、號。如配以適當(dāng)?shù)膫鞲衅鳎梢詫Χ喾N物理量進(jìn)展測試,比方機(jī)械振動(dòng)的頻率,轉(zhuǎn)速,聲音的頻率以及產(chǎn)品的計(jì)件等等。因此,數(shù)字頻率計(jì)是一種應(yīng)用很廣泛的儀器電子系統(tǒng)非常廣泛的應(yīng)用領(lǐng)域內(nèi),到處可見到處理離散信息的數(shù)字電路。數(shù)字電路制造工業(yè)的進(jìn)步,使得系統(tǒng)設(shè)計(jì)人員能在更小的空間內(nèi)實(shí)現(xiàn)更多的功能,從而提高系統(tǒng)可靠性和速度。集成電路的類型很多,從大的方面可以分為模擬電路和數(shù)字集成電路2大類。數(shù)字集成電路廣泛用于計(jì)算機(jī)、控制與測量系統(tǒng),以及其它電子設(shè)備中。一般說來,數(shù)字系統(tǒng)中運(yùn)行的電信號,具大小往往并不改變,但在實(shí)踐分布上卻有著嚴(yán)格的要求,這是數(shù)字電路的一個(gè)特點(diǎn)。數(shù)字集成電路作為電子技術(shù)最重要的根底產(chǎn)品之一,已廣泛
9、地深入到各個(gè)應(yīng)用領(lǐng)域1.2 頻率測量的思想和方法1 .頻率測量的根本思想測量被測信號在單位時(shí)間內(nèi)的脈沖個(gè)數(shù),其數(shù)字表達(dá)式f=N/t其中:f為被測信號的頻率N為脈沖的個(gè)數(shù)t為被測信號產(chǎn)生N個(gè)脈沖所需的時(shí)間2 .頻率測量方法直接測量法:直接測量被測信號的頻率,通過計(jì)數(shù)法來對被測信號在一定時(shí)間內(nèi)的脈沖個(gè)數(shù)進(jìn)展計(jì)數(shù)。直接測量法的構(gòu)造框圖如圖1.2.1所示。:被測信號放大整形計(jì)數(shù)測量結(jié)果1標(biāo)準(zhǔn)時(shí)鐘分頻圖1.2.1直接測量法的構(gòu)造框圖3 .誤差來源技術(shù)過程中最大存在著土1個(gè)字的量化誤差對時(shí)間t的準(zhǔn)確把握,主要包括準(zhǔn)時(shí)鐘的時(shí)間準(zhǔn)確性、整形電路、分頻電路以及技術(shù)時(shí)間控制閘門的開關(guān)速度等因素。=士 |1/ft|
10、 + |G|直接法測量的最大相對誤差可以表達(dá)為df/fmax=±|1/N|+|G|其中:N為脈沖的個(gè)數(shù),G為標(biāo)準(zhǔn)時(shí)鐘的頻率穩(wěn)定性,f為被測信號頻率,t為被測信號產(chǎn)生N個(gè)脈沖所需的時(shí)間。4 .功能及技術(shù)指標(biāo) 頻率測量X圍:10Hz100MHz 測量分辨率:1Hz 測量通道靈敏度:50mVpp 通道輸入阻抗:不小于100k? 測量誤差:±1 測量結(jié)果顯示:6位數(shù)碼管顯示該數(shù)字頻率計(jì)的操作面板如圖1.2.4所示輸入波形選擇方波I三角波測量結(jié)果顯示I正弦波IIIII被測輸入OO簡易數(shù)字頻率計(jì)量程選擇十GND圖1.2.4簡易數(shù)字頻率計(jì)的操作面板其中,被測信號可以有三種,分別是方波、三
11、角波和正弦波;測量結(jié)果顯示采用六個(gè)數(shù)碼管來顯示;量程分為三個(gè),分別為:0999999Hz、09999.99kHz、099.9999MHz2VerilogHDL簡介2.1 VerilogHDL的簡介VerilogHDL是一種硬件描述語言(hardwaredescriptionlanguage為了制作數(shù)位電路(數(shù)字電路)而用來描述ASICs和FPGAs的設(shè)計(jì)之用。Verilog的設(shè)計(jì)者想要以C程序語言(en:Cprogramminglanguage為根底設(shè)計(jì)一種語言,可以使工程師比擬熟悉跟容易承受。事實(shí)上,它產(chǎn)生與C程序語言類似的不嚴(yán)謹(jǐn)性質(zhì),并且大概與Pasca很相像。這種語言跟傳統(tǒng)的程序設(shè)計(jì)語言
12、不同,在于它的程序表達(dá)并非嚴(yán)格地線性(循序)執(zhí)行。Verilog模式包含不同模組(modules)(勺階層關(guān)系。模組(modules是輸出(inputs)和輸入(outputs)所定義出來的一個(gè)集合。在每個(gè)模組中,有一串的電線(wires'暫存器(registers)口子模組(submodules)勺定義。并且在每個(gè)模組里面,語言表達(dá)大局部都被群組成為各種的執(zhí)行區(qū)塊(blocks)用來定義該模組所產(chǎn)生的行為描述。在每個(gè)區(qū)塊(blocks內(nèi),使用begin和end的關(guān)鍵字來區(qū)隔開來,其中的表達(dá)是循序被執(zhí)行。但是同一個(gè)設(shè)計(jì),不同的區(qū)塊間的執(zhí)行是平行的。這個(gè)語言的表達(dá)之子集合是可合成(syn
13、thesizable)如果在一個(gè)電路設(shè)計(jì)的模組中僅包含可合成的表達(dá),那麼這個(gè)電路設(shè)計(jì)就可以被適當(dāng)?shù)能浖?,轉(zhuǎn)換合成為電腦芯片的電路layout。3數(shù)字頻率計(jì)系統(tǒng)框圖3.1 數(shù)字頻率計(jì)系統(tǒng)框圖設(shè)計(jì)如圖3.1.1所示的數(shù)字頻率計(jì)系統(tǒng)電路框圖圖3.1.1所示的數(shù)字頻率計(jì)系統(tǒng)電路框圖3.2 數(shù)字頻率計(jì)系統(tǒng)部件簡介1 .放大整形數(shù)字頻率計(jì)允許測量信號的類型有三種:方波、三角波和正弦波,并且信號的測量通道靈敏度為50mVpp,為此,需要將被測信號放大整形成標(biāo)準(zhǔn)的TTL電平的方波型號,便于CPLD/FPGA對信號脈沖的計(jì)數(shù)。2 .SW幺SW2SW3按鍵SW1、SW2、SW3這三個(gè)按鍵用來在測量的時(shí)候,用戶根據(jù)
14、被測信號的大致頻率X圍選擇不同的適合被測信號的量程。在按鍵的設(shè)計(jì)中,需要考慮實(shí)際按鍵的消抖問題3.標(biāo)準(zhǔn)時(shí)鐘標(biāo)準(zhǔn)時(shí)鐘為頻率計(jì)測量提供精度相比照擬高的時(shí)基信號,其時(shí)間的穩(wěn)定性與精度將會直接影響到頻率計(jì)測量的準(zhǔn)確性。4. LED顯示模塊頻率計(jì)將測量的結(jié)果通過6位數(shù)碼管LED來顯示。4基于VerilogHDL數(shù)字頻率計(jì)程序設(shè)計(jì)4.1 數(shù)字頻率計(jì)系統(tǒng)模塊劃分構(gòu)造數(shù)字頻率計(jì)中的CPLD/FPGA是頻率計(jì)的核心,主要實(shí)現(xiàn)在一定時(shí)間內(nèi),對被測信號的脈沖個(gè)數(shù)進(jìn)展計(jì)算,并且轉(zhuǎn)化為相應(yīng)的頻率值顯示在六個(gè)數(shù)碼管上。首先將系統(tǒng)分成七個(gè)模塊來分別設(shè)計(jì)仿真。分別有以下七個(gè)模塊:經(jīng)過上述模塊化劃分后的構(gòu)造框如圖4.1所示放大
15、整形后的信號量程選擇開關(guān)標(biāo)準(zhǔn) 時(shí)鐘圖4.1模塊化劃分后的構(gòu)造計(jì)數(shù)模塊counter:對包含被測信號頻率信息的脈沖進(jìn)展計(jì)數(shù)門控模塊gate_control根據(jù)量程,控制技術(shù)模塊計(jì)數(shù)。分頻模塊fdiv:將標(biāo)準(zhǔn)時(shí)鐘分頻,得到計(jì)數(shù)以及動(dòng)態(tài)顯示所需的時(shí)鐘存放器模塊flip_latch:對計(jì)數(shù)模塊的計(jì)數(shù)值進(jìn)展存放。多路選擇模塊data_mux根據(jù)動(dòng)態(tài)選擇信號,選擇相應(yīng)的需要顯示的計(jì)數(shù)值動(dòng)態(tài)為選擇模塊dispselevt輸出動(dòng)態(tài)顯示中的位選信號BCD譯碼模塊dispdenoder將BCD碼譯成數(shù)碼管的顯示數(shù)據(jù)4.2計(jì)數(shù)模塊counter該模塊主要完成對被測信號經(jīng)過放大整形后輸入到可編程邏輯器件的F_IN信號
16、是現(xiàn)在一定的時(shí)間下的計(jì)數(shù),采用六個(gè)異步BCD碼十進(jìn)制計(jì)數(shù)器來實(shí)現(xiàn)0999999X圍的計(jì)數(shù)。計(jì)數(shù)模塊的構(gòu)造框圖如圖4.2.1所示。counterENCLRF INQ53.0Q43_0Q330Q23.OQ030F_OUTinst圖4.2.1計(jì)數(shù)模塊的構(gòu)造框圖根據(jù)模塊實(shí)現(xiàn)的功能設(shè)計(jì)VerilogHDL源代碼如下:modulecounter(EN,CLR,F_IN,F_OUT,Q0,Q1,Q2,Q3,Q4,Q5);output3:0Q5,Q4,Q3,Q2,Q1,Q0;outputF_OUT;reg3:0Q5,Q4,Q3,Q2,Q1,Q0;inputEN;regF_OUT;inputCLR;regF_o
17、ut0,F_out1,F_out2,F_out3,F_out4;inputF_IN;always(posedgeF_IN)beginif(EN=1'b1)&&(CLR=1'b0)&&(Q0!=4'b1001)beginQ0<=Q0+4'b0001;F_OUT<=1'b0;endelsebeginQ0<=4'b0000;if(EN=1'b1)&&(CLR=1'b0)&&(Q1!=4'b1001)beginQ1<=Q1+4'b000
18、1;F_OUT<=1'b0;endelsebeginQ1<=4'b0000;if(EN=1'b1)&&(CLR=1'b0)&&(Q2!=4'b1001)beginQ2<=Q2+4'b0001;F_OUT<=1'b0;endelsebeginQ2<=4'b0000;if(EN=1'b1)&&(CLR=1'b0)&&(Q3!=4'b1001)beginQ3<=Q3+4'b0001;該模塊定義輸入端口如下:
19、F_OUT<=1'b0;endelsebeginQ3<=4'b0000;if(EN=1'b1)&&(CLR=1'b0)&&(Q4!=4'b1001)beginQ4<=Q4+4'b0001;F_OUT<=1'b0;endelsebeginQ4<=4'b0000;if(EN=1'b1)&&(CLR=1'b0)&&(Q5!=4'b1001)beginQ5<=Q5+4'b0001;F_OUT<=1
20、9;b0;endelsebeginQ5<=4'b0000;F_OUT<=1'b1;endendendendendendendEndmoduleEN:異步BCD碼十進(jìn)制計(jì)數(shù)器的全局使能信號CLR:異步BCD碼十進(jìn)制計(jì)數(shù)器復(fù)位信號F_IN:被測信號經(jīng)過放大與整形處理后的信號該模塊定義輸出端口如下:F_OUT:超出技術(shù)X圍0999999的輸出信號,用來指示提醒用戶選擇更大的量程。 Q0:計(jì)數(shù)器的最低位輸出 Q1:計(jì)數(shù)器的第5位輸出 Q2:計(jì)數(shù)器的第4位輸出 Q3:計(jì)數(shù)器的第3位輸出 Q4:計(jì)數(shù)器的第2位輸出 Q5:計(jì)數(shù)器的第1位輸出在Altera公司的軟件工具Quartu
21、sII中編譯和波形仿真得到波形如圖4.2.2所示。圖4.2.2計(jì)數(shù)模塊counter的仿真波形4.3門控模塊gate_control門控模塊實(shí)現(xiàn)檢測外界量程的選擇,并且根據(jù)量程輸出控制6位BCD碼十進(jìn)制計(jì)數(shù)器計(jì)算器的計(jì)數(shù)時(shí)鐘,以及在測量完一次信號頻率后,計(jì)數(shù)器計(jì)數(shù)值清零的清零要與后級存放器的鎖存時(shí)刻做很好的時(shí)序配合。應(yīng)該實(shí)在計(jì)數(shù)器測量完一次信號頻率后,首先將數(shù)據(jù)鎖存到存放器,然后再將計(jì)數(shù)器值清零,這樣可以驚醒下一次測量門控模塊的構(gòu)造框圖如圖4.3.1所示gate_control SWOLatch_EN SW1Counter_Clr SW2Counter_EN f1hzdp_s1hz f10hz
22、dp_s10hz f100hzdp_s1OOhzinst3圖4.3.1門控模塊構(gòu)造框圖根據(jù)模塊實(shí)現(xiàn)的功能設(shè)計(jì)VerilogHDL源代碼如下:modulegate_control(SW0,SW1,SW2,f1hz,f10hz,f100hz,Latch_EN,Counter_Clr,Counter_EN,dp_s1hz,dp_s10hz,dp_s100hz);outputLatch_EN;outputdp_s1hz,dp_s10hz,dp_s100hz;outputCounter_Clr;outputCounter_EN;inputSW0,SW1,SW2;input f1hz,f10hz,f100
23、hz;reg dp_s1hz,dp_s10hz,dp_s100hz;reg fref;reg wire_1;reg wire_2;/ 初始化輸入以及中間量initialbeginfref <= 1'b0;wire_1 <= 1'b0;wire_2 <= 1'b0;end/ 根據(jù)不同的外界量程選擇,選擇相應(yīng)的計(jì)數(shù)基時(shí)鐘always (SW0 or SW1 or SW2 or f1hz orf10hz or f100hz)beginif(SW2 = 1'b1)beginfref <= f100hz;dp_s1hz,dp_s10hz,dp_s1
24、00hz<= 3'b001;endelse if(SW1 = 1'b1)beginfref <= f10hz;dp_s1hz,dp_s10hz,dp_s100hz<= 3'b010;endelse if(SW0 = 1'b1)beginfref <= f1hz;dp_s1hz,dp_s10hz,dp_s100hz<= 3'b100;endend/ 根據(jù)不同的計(jì)數(shù)基時(shí)鐘,提供輸出相應(yīng)的計(jì)數(shù)器計(jì)數(shù)值的去除脈沖與鎖存器鎖存脈沖always (posedge fref)beginwire_1 <= ! wire_1;endal
25、ways (negedge fref)beginwire_2 <= wire_1;endassign Counter_EN = wire_1;assign Latch_EN = (! Counter_EN)& wire_2;assign Counter_Clr = (! Counter_EN) & (!Latch_EN) | (! wire_2);endmodule該模塊定義輸入端如下:SW0SW1、SW2:量程選擇開關(guān)flhz:1Hz的標(biāo)準(zhǔn)時(shí)鐘輸入fl0hz:10Hz的標(biāo)準(zhǔn)時(shí)鐘輸入 fl00hz:100Hz的標(biāo)準(zhǔn)時(shí)鐘輸入該模塊定義輸入端口如下: Latch_EN:用來是
26、能存放器所存數(shù)據(jù) Counter_Clr:用于計(jì)數(shù)器的清零 Counter_EN:用于使能計(jì)數(shù)器開場計(jì)數(shù) dp_s1hz:選擇999999Hz量程時(shí),用于控制顯示中的小數(shù)點(diǎn)位置 dp_s10hz選擇9999.99Hz量程時(shí),用于控制顯示中的小數(shù)點(diǎn)位置 dp_s100hz選擇99.9999Hz量程時(shí),用于控制顯示中的小數(shù)點(diǎn)位置在Altera公司的軟件工具QuartusII中編譯和波形仿真得到波形如圖4.3.2所示。LiiiqiTnerEi孑口TnkVindniHsp.事K松除置20%Z*&4可.JoibtgnViakcmMywI侑<|'Hortti1'5zIrtMt
27、電汨tErtt5FJE D®BOEkB U上加E AODIkt Q葷aexdfejUllrBIijLiDOkB 工CuoittEl ILsid_llBItxiiuB I- -Lrl審布,:,獷&-:,;:,:,媯::必::,:麴:審,榻跖蟲窗,以代:注:初工"::四:5工分般;+:&:,::翻式婿嫻然觥SJ旗您統(tǒng)統(tǒng)翩掇御秘流秘掇就嫡S掇瞰S微獺幽懣就統(tǒng)您斕掇儂班觥說兩畿酒:施赧:謝漱狡痂:淞懿痂濕綴斯:澗密出做熱端必翻:麻就的蹄;曜瀚明:;嵌修啜陶艇榻姆嫩&瞬微讖滋:猿然;嫄猴誣俄讖苑域畿溯;哪:煙;澎樂窗嫩瞰母般:搬嫩瑚:初崩加法:燎:燧虎滋富溷燃
28、她跋海:煙避他做西雙淞魴恭幽嘉磁淞掰械w總曲惑潴赧宓:勵(lì)戰(zhàn):-圖4.3.2門控模塊的仿真波形4.4分頻模塊fdiv分頻模塊在系統(tǒng)全局時(shí)鐘的驅(qū)動(dòng)下,經(jīng)過分頻得到系統(tǒng)中所需要的多種頻率成分的時(shí)鐘信號分頻模塊的構(gòu)造框圖如圖4.4.1所示fdivelkf1hzf10hzfWOhzflkhzinstlI,AHIIIII.1III1HIIIII»圖4.4.1分頻模塊構(gòu)造框圖根據(jù)模塊實(shí)現(xiàn)的功能設(shè)計(jì)VerilogHDL源代碼如下:modulefdiv(clk,f1hz,f10hz,f100hz,f1khz);t1=t1+1;outputf1hz,f10hz,f100hz,f1khz;inputclk
29、;regf1hz,f10hz,f100hz,f1khz;integert1=0,t2=0,t3=0,t4=0;always(posedgeclk)begin/if(t1<9999)/實(shí)際系統(tǒng)分頻值if(t1<2)/仿真時(shí)的分頻值beginf1khz<=1'b0;endelsebeginf1khz<=1'b1;t1=0;endendalways(posedgef1khz)begin/if(t2<9)/實(shí)際系統(tǒng)分頻值beginif(t2<2)/仿真時(shí)的分頻值beginf100hz<=1'b0;t2=t2+1;endelsebegin
30、f100hz<=1'b1;t2=0;endendalways(posedgef100hz)begin/if(t3<9)/實(shí)際系統(tǒng)分頻值if(t3<2)/仿真時(shí)的分頻值beginf10hz<=1'b0;t3=t3+1;endelsef10hz<=1'b1;t3=0;endendalways(posedgef10hz)begin/if(t4<9)/實(shí)際系統(tǒng)分頻值if(t4<2)/仿真時(shí)的分頻值beginf1hz<=1'b0;t4=t4+1;endelsebeginf1hz<=1'b1;t4=0;enden
31、dendmodule該模塊定義輸入端口如下: Clk:全局系統(tǒng)時(shí)鐘信號該模塊定義輸出端口如下: F1hz:輸出1Hz的時(shí)鐘信號 F10hz:輸出1Hz的時(shí)鐘信號 F1khz:輸出1Hz的時(shí)鐘信號在Altera公司的軟件工具QuartusII中編譯和波形仿真得到波形如圖4.4.2所小0圖4.4.2分頻模塊的仿真波形4.5 存放器模塊flip_latch存放器模塊實(shí)現(xiàn)每一個(gè)測量頻率時(shí),計(jì)數(shù)器計(jì)算值的暫時(shí)存儲。存放器模塊的構(gòu)造框圖如圖4.5.1所示。inst2A53OA43*OJA33.OA23.OA13.OAO3.O elkQ33,Q04 3,. OQ33 ,.O02(3.0Q13 OQO3 Of
32、liplatch圖4.5.1存放器模塊根據(jù)模塊實(shí)現(xiàn)的功能設(shè)計(jì)VerilogHDL源代碼如下:moduleflip_latch(clk,A0,A1,A2,A3,A4,A5,Q0,Q1,Q2,Q3,Q4,Q5);output3:0Q0,Q1,Q2,Q3,Q4,Q5;inputclk;input3:0A0,A1,A2,A3,A4,A5;reg3:0Q0,Q1,Q2,Q3,Q4,Q5;beginalways(posedgeclk)Q0<=A0;Q1 <= A1;Q4 <= A4;Q2 <= A2;Q5 <= A5;Q3 <= A3;endEndmodule該模塊定義
33、輸入端口如下: clk:所存數(shù)據(jù)信號輸入,當(dāng)clk的上升沿到來時(shí),存放器將輸入端信號鎖存進(jìn)存放器,并且改變輸出。 A0,A1,A2,A3,A4,A5:存放器的數(shù)據(jù)輸入端該模塊定義輸出端口如下: Q0,Q1,Q2,Q3,Q4,Q5存放器的數(shù)據(jù)輸出端。在Altera公司的軟件工具QuartusII中編譯和波形仿真得到波形如圖4.5.2所0 fR | tWwlmhrIQISm口口口口口口呂IrJlgdo呂fl n- MU1m聞wJnJde T TdU&SIMK叩口於 044可 sflwB=anEflaaBi Itl:jh注篁sg.ID D_L,??;ghIUn 山IUHif加 iMi::硼mw
34、Iffl二一 IPIMIAlli ;g J仇皿工nu工111Ml!LLIOlloiXjmIunIlaini:Id 同:1 口日X1 限IJ Hi1ESil:MIL:UHJ1IHI11WJMilEEH1-nn-ncrEK-1Q.16rwSEQfEnd-Dp圖4.5.2存放器模塊的仿真波形4.6 多路選擇模塊datamux多路選擇模塊實(shí)現(xiàn)測量頻率值的分時(shí)顯示,即動(dòng)態(tài)顯示。經(jīng)過多路選擇器模塊來分時(shí)地傳輸數(shù)據(jù)多路選擇模塊的構(gòu)造如圖4.6.1所示inst8.A53.OA43.OA33,0A230一A130一AOPQQ3.Odisp_select2.OdatamuxIIIIiTThHIIBBlBiilII
35、I圖4.6.1多路選擇模塊構(gòu)造框圖根據(jù)模塊實(shí)現(xiàn)的功能設(shè)計(jì)VerilogHDL源代碼如下:moduledata_mux(disp_select,A0,A1,A2,A3,A4,A5,Q);output3:0Q;input2:0disp_select;input3:0A0,A1,A2,A3,A4,A5;reg3:0Q;always(disp_select,A5,A4,A3,A2,A1,A0,Q)begincase(disp_select)3'b000:Q<=A5;3'b001:Q<=A4;3'b010:Q<=A3;3'b011:Q<=A2;3&
36、#39;b100:Q<=A1;3'b101:Q<=A0;default:Q<=4'b0;endcaseendEndmodule該模塊定義輸入端口如下:disp_select選擇信號輸入A0,A1,A2,A3,A4,A5:多路選擇模塊的數(shù)據(jù)輸入端口該模塊定義輸出端口如下:多路選擇模塊的數(shù)據(jù)輸出端口。在Altera公司的軟件工具QuartusII中編譯和波形仿真得到波形如圖4.6.2所酒31虬3MidwTnEla,lOtEinr工1"Irfwwi2的*q1b1=:piEb|1ji-瓦|JDliiiM3fiji劉pikCDfieEnsJFjBADI1HEO
37、JmiDXeiiImooXsioi-uCil-MJED1-,jrLJ-£H黑【IMI1119T151、i51DIIlli5附LITO:imi_inp_JL»»n網(wǎng)迎電11jm:卬而|如共OtdU工Hi上4aMflmithMfrarantflLQI:_X_x_Iim迎iirl£<dOlifDioYoiiTw舊編-J皿wle建tn】LI|E3LiLFl由Q!llti4.7動(dòng)態(tài)位選模塊dispselect動(dòng)態(tài)位選模塊用來驅(qū)動(dòng)數(shù)碼動(dòng)態(tài)地顯示頻率測量數(shù)據(jù),分時(shí)地選擇各個(gè)數(shù)碼管進(jìn)展顯示動(dòng)態(tài)位選的構(gòu)造框圖4.7.1所示。dispselect:一elkQ50Tdi
38、sp_select2,.0inst7卜、嚴(yán)'"',r,,、!、h、產(chǎn)%,-圖4.7.1動(dòng)態(tài)位選模塊的構(gòu)造框圖根據(jù)模塊實(shí)現(xiàn)的功能設(shè)計(jì)module dispselect(clk,disp_select,Q);output 5:0 Q;output 2:0 disp_select;input clk;reg 5:0 Q;reg 2:0 disp_select;always (posedge clk)beginif(disp_select < 3'b101)disp_select <= disp_select +Verilog HDL源代碼如下:elsed
39、isp_select <= 3'b0;case(disp_select)3'b000: Q <= 6'b100000;3'b001: Q <= 6'b010000;3'b010: Q <= 6'b001000;3'b011: Q <= 6'b000100;3'b100: Q <= 6'b000010;3'b101: Q <= 6'b000001;default: Q <= 6'b000000;endendmodule該模塊定義輸入端口如
40、下: clk:動(dòng)態(tài)位選的時(shí)鐘信號輸入,一般取1KHz左右的標(biāo)準(zhǔn)時(shí)鐘。該模塊定義輸出端口如下: disp_select動(dòng)態(tài)位選中間量輸出,用于與系統(tǒng)中其他模塊之間的同步。 Q:動(dòng)態(tài)位選信號輸出,可以直接接到數(shù)碼管的公共端。在Altera公司的軟件工具QuartusII中編譯和波形仿真得到波形如圖4.7.2所示。圖4.7.2動(dòng)態(tài)位選模塊的仿真波形4.8BCD譯碼模塊dispdecoderBCD譯碼模塊主要實(shí)現(xiàn)BCD碼到7段數(shù)碼管顯示碼字段的轉(zhuǎn)換,同時(shí),考慮到頻率測量中的一些“零的處理,比方選擇量程1999999Hz,但被測信號頻率為100Hz,這樣在顯示的時(shí)候就需要將6為數(shù)碼管的前三位屏蔽。BCD
41、譯碼模塊的構(gòu)造框圖如圖4.7.1所示。dispdecoderi,data_in30data_out6C1¥1a«,disp_select20加dp_s1hzdp_s1Ohzdp_s100hz'Q53,0*'Q4J0FL1Q&3XL1Q23.O*'Qip.Ol'Q03.01Icouriter_oLi1rinstSB*iAimM&Bhsiaji,imBLhhaaAiS.MJIB&i1111sUdijI.,金ii&Hj1.品口鼻14JiUJijiUMAjia圖4.8.1BCD譯碼模塊的構(gòu)造框圖根據(jù)模塊實(shí)現(xiàn)的功能設(shè)計(jì)V
42、erilogHDL源代碼如下:module dispdecoder(data_in,disp_select,dp_s1hz,dp_s10hz,dp_s100hz,Q5,Q4,Q3,Q2,Q1,Q0,counter_out,data_out,input 2:0 disp_select;input dp_s1hz,dp_s10hz,dp_s100hz;input 3:0 Q5,Q4,Q3,Q2,Q1,Q0;input counter_out;reg dp;reg 6:0 data_out;reg hide;dp);initialoutput6:0data_out;beginoutputdp;dp&
43、lt;=1'b0;hide <= 1'b0;input3:0data_in;end7'b1110000;/7/譯碼顯示數(shù)據(jù)always(data_in,hide,data_out)beginif(hide=1'b0)begincase(data_in)4'b0000:data_out<=7'b1111110;/04'b0001:data_out<=7'b0110000;/14'b0010:data_out<=7'b1101101;/24'b0011:data_out<=7
44、9;b1111001;/34'b0100:data_out<=7'b0110011;/44'b0101:data_out<=7'b1011011;/54'b0110:data_out<=7'b1011111;/64'b0111:data_out<=4'b1000:data_out<=7'b1111111;/84'b1001:data_out<=7'b1110011;/9default:data_out<=7'b0000000;endcaseendend/小數(shù)
45、點(diǎn)位置與零數(shù)字的處理always(disp_select,dp_s1hz,dp_s10hz,dp_s100hz,Q5,Q4,Q3,Q2,Q1,counter_out,dp,hide)beginif(disp_select=3'b001)&&(dp_s100hz=1'b1)|(disp_select=3'b011)&&(dp_s10hz=1'b1)|(disp_select=3'b101)&&(dp_s1hz=1'b1)dp <= 1'b1;1'b0)&&(Q5=
46、4'b0)&&elsedp<=1'b0;case(disp_select)3'b000:beginif(counter_out=1'b0)&&(Q5=4'b0)hide<=1'b1;elsehide<=1'b0;end3'b001:beginif(counter_out=1'b0)&&(Q5=4'b0)&&(Q4=4'b0)&&(dp_s100hz!=1'b1)hide<=1'b1;els
47、ehide<=1'b0;end3'b010:beginif(counter_out=(Q4=4'b0)&&(Q3=4'b0)&&(dp_s100hz!=1'b1)hide<=1'b1;elsehide<=1'b0;end3'b011:beginif(counter_out1'b0)&&(Q5=4'b0)&&(Q4=4'b0)&&(Q3=4'b0)&&(Q2=4'b0)&&
48、amp;(dp_s100hz!=1'b1)&&(dp_s10hz!=1'b1)hide<=1'b1;elsehide<=1'b0;end3'b100:beginif(counter_out1'b0) && (Q5 = 4'b0) &&else(Q4=4'b0)&&(Q3=4'b0)&&(Q2=4'b0)&&(Q1=4'b0)&&(dp_s100hz!=1'b1)&&am
49、p;(dp_s10hz!=1'b1)hide<=1'b1;hide<=1'b0;enddefault:hide<=1'b0;endcaseendendmodule該模塊定義輸入端口如下: data_in:BCD碼字輸入信號 disp_select來自動(dòng)態(tài)顯示位模塊,實(shí)現(xiàn)兩者之間的同步dp_s1hz,dp_s10h4dp_s100hz輸入小數(shù)點(diǎn)位置控制信號來自門控模塊 Q5,Q4,Q3,Q2,Q1,QQ計(jì)數(shù)器的計(jì)數(shù)值輸入,用來控制“零顯示控制 counter_out計(jì)數(shù)器計(jì)數(shù)溢出信號,用來提示用戶更換更大量程該模塊定義輸出端口如下: data_o
50、ut:經(jīng)過譯碼后的7段數(shù)碼管顯示數(shù)據(jù)輸出,可以直接連接到數(shù)碼管的數(shù)據(jù)端口 dp:小數(shù)點(diǎn)控制信號在Altera公司的軟件工具QuartusII中編譯和波形仿真得到波形如圖4.8.2所示。M7EHer卬吧下,上"nsT.IBn5MEntP11Ifi0EX0II30QEEI加.口3MEDIVE.二_I_:i.I_IF豆-一三比正正應(yīng)亙。LG05ucDOS!S3DJt曲inXoaiTtC-JW"IR皿NDI:nilX叩5CUQI£3IC(mm;l3JtmtnI.1叫口赳£皿1Jnun1moi:1DLQDXDOUatOln.】QLDJrQJLiIaLJy.LDDI
51、X.QE.JDbuElLDn;inLi-J.amJILVL';Icnn二I:口和|ruum,IQ州JmIjllDICMBTWrE*"t<|p_ilCCfars巾BaiS雪田as5*修B血,lQ4j/皿*幅國也innm*激獺源陰蝴瞰眼踹冷頗微瞬般順瞄瞅娥娜能黜雌幽減娜般嫻殿觥微蹦島睇玄圖4.8.2BCD譯碼模塊的仿真波形4.9頂層電路top在設(shè)計(jì)完各個(gè)模塊后,需要將各個(gè)模塊有機(jī)地組合成一個(gè)整體,最后來實(shí)現(xiàn)系統(tǒng)的功能。在數(shù)字頻率計(jì)中,同時(shí)采用了電路原理圖示的設(shè)計(jì)以及VerilogHDL語言來編寫的頂層電路,其中頂層如圖4.9.1所示。用VerilogHDL語言描述如下:mo
52、dulemain(Clock,SW2,SW1,SW0,F_in,over_alarm,dp,wireSYNTHESIZED_WIRE_0;wireSYNTHESIZED_WIRE_1;wireSYNTHESIZED_WIRE_2;wire3:0SYNTHESIZED_WIRE_32;wire3:0SYNTHESIZED_WIRE_33;disp_data,wire3:0disp_selectSYNTHESIZED_WIRE_34;);wire3:0SYNTHESIZED_WIRE_35;inputClock;wire3:0inputSW2;SYNTHESIZED_WIRE_36;inputSW
53、1;wire3:0inputSW0;SYNTHESIZED_WIRE_37;inputF_in;wireSYNTHESIZED_WIRE_9;outputover_alarm;wireoutputdp;SYNTHESIZED_WIRE_10;output6:0disp_data;wireoutput5:0disp_select;SYNTHESIZED_WIRE_11;wireSYNTHESIZED_WIRE_12;wireSYNTHESIZED_WIRE_13;wireSYNTHESIZED_WIRE_14;wireSYNTHESIZED_WIRE_15;wire3:0SYNTHESIZED_
54、WIRE_16;wire2:0SYNTHESIZED_WIRE_38;wireSYNTHESIZED_WIRE_24;wire3:0SYNTHESIZED_WIRE_25;wire3:0SYNTHESIZED_WIRE_26;wire3:0SYNTHESIZED_WIRE_27;wire3:0SYNTHESIZED_WIRE_28;wire3:0SYNTHESIZED_WIRE_29;wire3:0SYNTHESIZED_WIRE_30;assignover_alarm=SYNTHESIZED_WIRE_15;counterb2v_inst(.EN(SYNTHESIZED_WIRE_0),.CLR(SYNTHESIZED_WIRE_1),.F_IN(F_in),.F_OUT(SYNTHESIZED
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)倉庫與在線分析試題及答案
- 2025屆江蘇省宿遷市沭陽廣宇學(xué)校八下數(shù)學(xué)期末監(jiān)測試題含解析
- 網(wǎng)絡(luò)協(xié)議分析基礎(chǔ)試題及答案
- 計(jì)算機(jī)操作技能試題及答案
- 網(wǎng)絡(luò)管理系統(tǒng)平臺wahl試題及答案
- 法學(xué)概論考試的時(shí)間管理策略與試題及答案
- 幼兒園日常生活中的教研活動(dòng)計(jì)劃
- 法學(xué)概論與國際法的關(guān)系試題及答案
- 項(xiàng)目進(jìn)度跟蹤的有效方法計(jì)劃
- 2024年濰坊市寒亭區(qū)市場監(jiān)督管理局招聘真題
- 團(tuán)體體檢報(bào)告格式模板范文
- 漢heidenhain itnc用戶手冊探測循環(huán)
- 學(xué)習(xí)領(lǐng)會《在二十屆中央政治局第四次集體學(xué)習(xí)時(shí)的講話》心得
- 水稻聯(lián)合收割機(jī)使用與維護(hù)
- 供應(yīng)商考核評分表
- 無土栽培學(xué)(全套課件660P)
- 《表觀遺傳》教學(xué)設(shè)計(jì)
- 20千伏及以下配電網(wǎng)工程業(yè)主項(xiàng)目部標(biāo)準(zhǔn)化管理手冊
- GB/T 3683-2011橡膠軟管及軟管組合件油基或水基流體適用的鋼絲編織增強(qiáng)液壓型規(guī)范
- GB/T 3036-1994船用中心型蝶閥
- GB/T 18920-2020城市污水再生利用城市雜用水水質(zhì)
評論
0/150
提交評論