已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
簡(jiǎn)易數(shù)字頻率計(jì)-數(shù) 字 系 統(tǒng) 設(shè) 計(jì) 文 檔 姓名:王淑麗學(xué)號(hào):08008103我在本課程中所選擇的課題是用Verilog HDL實(shí)現(xiàn)的簡(jiǎn)易數(shù)字頻率計(jì)。設(shè)計(jì)的頻率器可以實(shí)現(xiàn)在量程范圍內(nèi)根據(jù)被測(cè)信號(hào)大小自動(dòng)更換量程,并用數(shù)碼管顯示頻率值,用發(fā)光二級(jí)管顯示量程。此次設(shè)計(jì)的目的要求如下:(1)頻率測(cè)量范圍10Hz1MHz(2)量程自動(dòng)轉(zhuǎn)換,量程分為10KHz (1s) 、100KHz (0.1s) 、1MHz (10ms)三檔。轉(zhuǎn)換規(guī)則如下:當(dāng)讀數(shù)大于9999時(shí),頻率計(jì)處于超量程狀態(tài),下一次測(cè)量時(shí),量程自動(dòng)增大一檔;當(dāng)讀數(shù)小于0999時(shí),頻率計(jì)處于欠量程狀態(tài),下一次測(cè)量時(shí),量程自動(dòng)減小一檔(3)數(shù)據(jù)采用記憶顯示方式,即計(jì)數(shù)過程中不顯示數(shù)據(jù),待計(jì)數(shù)過程結(jié)束以后,顯示計(jì)數(shù)結(jié)果,并將此顯示結(jié)果保持到下一次計(jì)數(shù)結(jié)束。(4)用發(fā)光二極管顯示量程。系統(tǒng)模型及實(shí)際測(cè)試情況設(shè)計(jì)的頻率計(jì)包括三個(gè)量程指示燈,四位數(shù)碼管顯示,復(fù)位鍵,外接信號(hào)接線孔,GND接線孔。其界面如下圖:系統(tǒng)運(yùn)行結(jié)果:復(fù)位鍵播向0,系統(tǒng)不工作,三個(gè)量程顯示燈均不亮,四位數(shù)碼管顯示為0000;復(fù)位鍵播向1,系統(tǒng)進(jìn)入正常工作狀態(tài),開始以下測(cè)量:當(dāng)輸入信號(hào)為6.34KHZ時(shí),紅色指示燈亮起,數(shù)碼管顯示:6.340。當(dāng)輸入信號(hào)為29.352KHZ時(shí),綠色指示燈亮起,數(shù)碼管顯示:29.35當(dāng)輸入信號(hào)為273.9KHZ時(shí),黃色指示燈亮起,數(shù)碼管顯示:273.9系統(tǒng)原理及設(shè)計(jì)流程根據(jù)設(shè)計(jì)要求可以很容易得出程序的流程圖如下:清零顯示計(jì)數(shù)鎖存溢出/欠量程更換量程否是由流程圖便可以設(shè)計(jì)系統(tǒng)了,本系統(tǒng)可根據(jù)功能分為五個(gè)功能模塊。分別為:分頻器,計(jì)數(shù)器,控制器,鎖存器,顯示模塊。用Verilog HDL編程時(shí)也是根據(jù)各個(gè)模塊的功能要求,分別編寫每一個(gè)子模塊的程序,然后把每個(gè)模塊封裝起開。最終的系統(tǒng)就用這五個(gè)模塊連接起來即可。每個(gè)模塊的作用說明如下:分頻器:此模塊的輸入信號(hào)為來自控制器的量程選擇信號(hào)、機(jī)內(nèi)標(biāo)準(zhǔn)時(shí)鐘(2MHZ),復(fù)位信號(hào)。輸出信號(hào)為門限信號(hào),供給計(jì)數(shù)器作為計(jì)數(shù)技術(shù)時(shí)間。計(jì)數(shù)器: 計(jì)數(shù)器以被測(cè)信號(hào)上升沿為觸發(fā)事件,在門限信號(hào)內(nèi)部計(jì)數(shù)器累計(jì)加1,門限結(jié)束根據(jù)計(jì)數(shù)器的計(jì)數(shù)值判斷量程是否合適,并將判斷結(jié)果以標(biāo)志位的形式發(fā)送給控制器,同時(shí)將計(jì)數(shù)結(jié)果輸出給鎖存器。如果控制器發(fā)出清零信號(hào),將立刻清除標(biāo)記位??刂破鳎?作為系統(tǒng)核心的控制器,它以被測(cè)信號(hào)上升沿為觸發(fā)事件,不斷的檢測(cè)計(jì)數(shù)器發(fā)出的標(biāo)志位(表征判斷量程是否合適)。如果量程合適,發(fā)出鎖存信號(hào)給鎖存器;如果量程偏大或偏小,則根據(jù)具體情況重置輸出量程選擇信號(hào),并發(fā)出清零信號(hào)給計(jì)數(shù)器。鎖存器: 鎖存器以鎖存信號(hào)上升沿為觸發(fā)事件,每響應(yīng)一次就將輸入端的計(jì)數(shù)值與量程選擇輸出給顯示電路。顯示電路:顯示電路以被測(cè)信號(hào)上升沿為響應(yīng)事件,每響應(yīng)一次就根據(jù)所選量程控制相應(yīng)的指示燈亮起。并根據(jù)計(jì)數(shù)值的不同控制四位數(shù)碼管顯示出計(jì)數(shù)值即可。以上五個(gè)模塊的具體連接情況如下圖:控制器分頻器計(jì)數(shù)器鎖存器顯示電路機(jī)內(nèi)時(shí)鐘被測(cè)信號(hào)量程是否合適鎖存信號(hào)換量程清零程序代碼如下:(1) 分頻模塊:module newclk(clk,rst,k1,k2,outclk);input clk,k1,k2,rst;output outclk;reg outclk;reg 20:0cnt;reg1:0state;always (posedge clk)beginif(!rst) begin cnt=0; outclk=0; endelsecnt=cnt+1;if(state!=k1,k2)/判斷量程是否改變beginif(outclk=0)beginoutclk=outclk;cnt=0;endelse ;endelse ;if(k1,k2=0)/低量程計(jì)時(shí)1sbeginif(cnt=1999999)/999999begincnt=0;outclk=outclk;endelse ;endelse if(k1,k2=1) /中間量程計(jì)時(shí)0.1sbeginif(cnt=199999)/99999begincnt=0;outclk=outclk;endelse ;endelse if(k1,k2=2) /高量程計(jì)時(shí)10msbeginif(cnt=19999)/9999begincnt=0;outclk=outclk;endelse ;endelse outclk=0;state9999;low表示計(jì)數(shù)是否=999output 3:0cout0,cout1,cout2,cout3;reg high,low,cout0,cout1,cout2,cout3;reg 14:0counter;reg qdoor;always (posedge fx)beginif(reset=1)/beginif(clr=0)/不清零begincase(qdoor,door)/尋找門限2b00: ;2b01: counter=1;/門限開始2b10: begin /門限結(jié)束if(counter9999) high=1;else high=0;endcout0=counter/1000;cout1=(counter/100)%10;cout2=(counter/10)%10;cout3=counter%10; enddefault:counter=counter+1;/門限內(nèi)部計(jì)數(shù)endcaseendelse /清零信號(hào)作用beginhigh=1;low=0;counter=2;endendelse /復(fù)位信號(hào)作用beginhigh=1;low=0;counter=0;endqdoor=door;endendmodule(3)控制器模塊module control(s1,s2,show,high,low,clk,reset,clr);input high,low,clk,reset; output s1,s2,show,clr; /s1,s2是量程選擇信號(hào),show為鎖存信號(hào),clr是清零信號(hào);reg s1,s2,show,clr,temp1;reg 1:0temp;always (posedge clk)beginif(reset=1)begincase(temp) /使清零信號(hào)保持2個(gè)時(shí)鐘周期,以便計(jì)數(shù)器響應(yīng)2b01:beginclr=clr;temp=temp-1;end2b10:temp=temp-1;default ;endcaseif(temp1=1)beginshow=show;temp1=0;endelse ;case(high,low)2b00:beginif(s1,s20) s1,s2=s1,s2-1;else ;clr=clr;temp=2;end2b01:beginshow=show;temp1=1;end2b11:beginif(s1,s22)s1,s2=s1,s2+1;else;clr=clr;temp=2;enddefault;endcaseendelsebegins1=0;s2=1;show=0;clr=0;endendendmodule(4)鎖存器模塊module lock(reset,show,cin0,cin1,cin2,cin3,s1,s2,cout0,cout1,cout2,cout3,k1,k2);input reset,show,s1,s2;input 3:0cin0,cin1,cin2,cin3;output 3:0cout0,cout1,cout2,cout3;output k1,k2;reg cout0,cout1,cout2,cout3,k1,k2;always (posedge show)beginif(reset!=0)cout0,cout1,cout2,cout3,k1,k2=cin0,cin1,cin2,cin3,s1,s2;elsecout0,cout1,cout2,cout3,k1,k2=3; /無效endendmodule(5)顯示電路module show(clk,reset,cin0,cin1,cin2,cin3,k1,k2,cout0,cout1,cout2,cout3,s1,s2,s3,point);input 3:0 cin0,cin1,cin2,cin3;input clk,reset,k1,k2;output6:0 cout0,cout1,cout2,cout3; /七段數(shù)碼管顯示output 3:0 point; /四位小數(shù)點(diǎn)output s1,s2,s3; /量程指示燈reg cout0,cout1,cout2,cout3,s1,s2,s3,point;always (posedge clk)beginif(reset!=0)begincase(cin0)4b0000:cout0= 7b0000001;4b0001:cout0= 7b1001111;4b0010:cout0= 7b0010010;4b0011:cout0= 7b0000110;4b0100:cout0= 7b1001100;4b0101:cout0= 7b0100100;4b0110:cout0= 7b0100000;4b0111:cout0= 7b0001111;4b1000:cout0= 7b0000000;4b1001:cout0= 7b0000100;default:;endcasecase(cin1)4b0000:cout1= 7b0000001;4b0001:cout1= 7b1001111;4b0010:cout1= 7b0010010;4b0011:cout1= 7b0000110;4b0100:cout1= 7b1001100;4b0101:cout1= 7b0100100;4b0110:cout1= 7b0100000;4b0111:cout1= 7b0001111;4b1000:cout1= 7b0000000;4b1001:cout1= 7b0000100;default:;endcasecase(cin2)4b0000:cout2= 7b0000001;4b0001:cout2= 7b1001111;4b0010:cout2= 7b0010010;4b0011:cout2= 7b0000110;4b0100:cout2= 7b1001100;4b0101:cout2= 7b0100100;4b0110:cout2= 7b0100000;4b0111:cout2= 7b0001111;4b1000:cout2= 7b0000000;4b1001:cout2= 7b0000100;default:;endcasecase(cin3)4b0000:cout3= 7b0000001;4b0001:cout3= 7b1001111;4b0010:cout3= 7b0010010;4b0011:cout3= 7b0000110;4b0100:cout3= 7b1001100;4b0101:cout3= 7b0100100;4b0110:cout3= 7b0100000;4b0111:cout3= 7b0001111;4b1000:cout3= 7b0000000;4b1001:cout3= 7b0000100;default:;endcasecase(k1,k2)2b00:begins3=0;s2=0;s1=1;point3=0;point2=1;point1=1;point0=1;end2b01:begins2=1;s1=0;s3=0;point3=1;point2=0;point1=1;point0=1;end2b10:begins3=1; s2=0; s1=0;point3=1;point2=1;point1=0;point0=1;enddefault: ;endcaseendelsebegin cout0,cout1,cout2,cout3=28b0000001000000100000010000001;s1=0; s2=0;s3=0;point3=1;point2=1;point1=1;point0=1;endendendmodule最終設(shè)計(jì)的頂層文件(gdf格式)如下: 仿真結(jié)果:(1) 當(dāng)測(cè)量信號(hào)頻率在高量程時(shí),仿真時(shí)序圖如下:從圖中可以看出四個(gè)小數(shù)點(diǎn)的變化總是隨著量程的變化而變化。分頻器輸出的門信號(hào)最初為200ns,計(jì)數(shù)器在200ns內(nèi)計(jì)數(shù)值超過9999,于是控制器發(fā)出清零信號(hào),同時(shí)更換量程,分頻器輸出20ns的門控信號(hào),計(jì)數(shù)器重新計(jì)數(shù),計(jì)數(shù)值符合要求,控制器發(fā)出鎖存信號(hào),數(shù)碼管顯示計(jì)數(shù)值。三個(gè)LED燈顯示量程。(2) 當(dāng)測(cè)量信號(hào)頻率在中間量程時(shí),仿真時(shí)序圖如下:從圖中可以看出四個(gè)小數(shù)點(diǎn)的變化總是隨著量程的變化而變化。分頻器輸出的門信號(hào)最初為200ns,計(jì)數(shù)器在200ns內(nèi)計(jì)數(shù),計(jì)數(shù)值符合要求,控制器發(fā)出鎖存信號(hào),數(shù)碼管顯示計(jì)數(shù)值。三個(gè)LED燈顯示量程(3) 當(dāng)測(cè)量信號(hào)頻率在低量程時(shí)的仿真時(shí)序圖如下:從圖中可以看出四個(gè)小數(shù)點(diǎn)的變化總是隨著量程的變化而變化。分頻器輸出的門信號(hào)最初為20ns,計(jì)數(shù)器在20ns內(nèi)計(jì)數(shù)值小于999,于是控制器發(fā)出清零信號(hào),同時(shí)更換量程,分頻器輸出200ns的門控信號(hào),計(jì)數(shù)器重新計(jì)數(shù),計(jì)數(shù)值符合要求,控制器發(fā)出鎖存信號(hào),數(shù)碼管顯示計(jì)數(shù)值。三個(gè)LED燈顯示量程。從以上仿真結(jié)果可以看出設(shè)計(jì)的系統(tǒng)可以實(shí)現(xiàn)自動(dòng)更換量程,并且記憶顯示測(cè)量量結(jié)果。滿足設(shè)計(jì)要求。實(shí)驗(yàn)總結(jié)通過此次試驗(yàn),我熟悉了數(shù)字電路的基本設(shè)計(jì)流程。同時(shí)也基本掌握了Verilog HDL語言及其開
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版施工隊(duì)中途退場(chǎng)預(yù)防措施及違約責(zé)任協(xié)議3篇
- 2025年湖南省懷化靖州苗族侗族自治縣自來水公司招聘筆試參考題庫附帶答案詳解
- 2025年銷售員聘用協(xié)議書含客戶關(guān)系維護(hù)服務(wù)2篇
- 2025年度新型智能公寓租賃合同范本4篇
- 2025版安防產(chǎn)品銷售代理居間服務(wù)合同范本
- 2025年度個(gè)人租車保險(xiǎn)及救援服務(wù)合作協(xié)議4篇
- 2025年全球及中國半導(dǎo)體光刻模擬器行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球心包穿刺套件行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國光熱液壓系統(tǒng)行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025年鋼構(gòu)工程裝配式建筑合同樣本2篇
- 二零二五版電力設(shè)施維修保養(yǎng)合同協(xié)議3篇
- 最經(jīng)典凈水廠施工組織設(shè)計(jì)
- 2025年度版權(quán)授權(quán)協(xié)議:游戲角色形象設(shè)計(jì)與授權(quán)使用3篇
- 心肺復(fù)蘇課件2024
- 《城鎮(zhèn)燃?xì)忸I(lǐng)域重大隱患判定指導(dǎo)手冊(cè)》專題培訓(xùn)
- 湖南財(cái)政經(jīng)濟(jì)學(xué)院專升本管理學(xué)真題
- 運(yùn)動(dòng)技能學(xué)習(xí)與控制課件第一章運(yùn)動(dòng)技能學(xué)習(xí)與控制概述
- 工程設(shè)計(jì)費(fèi)取費(fèi)標(biāo)準(zhǔn)
- 清華大學(xué)考生自述
- 人機(jī)工程學(xué)與眼鏡
- 中層后備干部培訓(xùn)心得體會(huì)范本
評(píng)論
0/150
提交評(píng)論