【正文】
c3=not c3。 process(clk)is begin if clk39。 t10=1。event and clk=39。 end if。139。signal c3:std_logic。signal t100:integer range 1 to 240000。clkout1K : out STD_LOGIC)。entity fenpinqi is Port ( clk : in STD_LOGIC。二、 單元電路設(shè)計(jì) 分頻器:該電路將產(chǎn)生四個(gè)不同頻率的信號(hào)輸出,因?yàn)殡娐钒迳辖o出了一個(gè)48MHZ的晶振,所以我們只需要對(duì)48MHZ的信號(hào)進(jìn)行適當(dāng)分頻即可得到我們所需的四個(gè)不同頻率的信號(hào)輸出,我們?cè)O(shè)計(jì)一個(gè)輸入為48MHZ,有四個(gè)輸出端分別為1HZ,10HZ和100HZ,1KHZ的分頻器,原程序如下: library IEEE。3)門控電路,產(chǎn)生用于計(jì)數(shù)的使能控制信號(hào),清零信號(hào)以及鎖存器鎖存信號(hào)。不難設(shè)想,若將閘門時(shí)間設(shè)為T=,則計(jì)數(shù)值為10000,這時(shí),顯示器的小數(shù)點(diǎn)只要根據(jù)閘門時(shí)間T的改變也隨之自動(dòng)往右移動(dòng)一位(自動(dòng)定位),那么。閘門開通的時(shí)間稱為閘門時(shí)間,其長(zhǎng)度等于門控信號(hào)作用時(shí)間T。 系統(tǒng)設(shè)計(jì)原理: 所謂“頻率”,就是周期性信號(hào)在單位時(shí)間(1秒)內(nèi)變化的次數(shù)。電子技術(shù)綜合試驗(yàn)實(shí)驗(yàn)報(bào)告 班級(jí):測(cè)控一班 學(xué)號(hào):2907101002 姓名:李大帥 指導(dǎo)老師:李穎基于FPGA的數(shù)字頻率計(jì)設(shè)計(jì)報(bào)告一、 系統(tǒng)整體設(shè)計(jì)設(shè)計(jì)要求: 被測(cè)輸入信號(hào):方波 測(cè)試頻率范圍為:10Hz~100MHz 量程分為三檔:第一檔:閘門時(shí)間為1S時(shí), 第二檔:, 第三檔:。若在一定的時(shí)間間隔T內(nèi)計(jì)數(shù),計(jì)得某周期性信號(hào)的重復(fù)變化次數(shù)為N,則該信號(hào)的頻率可表達(dá)為:f = N / T .基于這一原理我們可以使用單位時(shí)間內(nèi)對(duì)被測(cè)信號(hào)進(jìn)行計(jì)數(shù)的方法求得對(duì)該信號(hào)的頻率測(cè)量,具體實(shí)現(xiàn)過程簡(jiǎn)述如下: 首先,將被測(cè)信號(hào)①(方波)加到閘門的輸入端。比如,時(shí)間基準(zhǔn)信號(hào)的重復(fù)周期為1S,加到閘門的門控信號(hào)作用時(shí)間T亦準(zhǔn)確地等于1S,即閘門的開通時(shí)間——“閘門時(shí)間”為1S。在計(jì)數(shù)式數(shù)字頻率計(jì)中,通過選擇不同的閘門時(shí)間,可以改變頻率計(jì)的測(cè)量范圍和測(cè)量精度。4)計(jì)數(shù)器,用于對(duì)輸入的待測(cè)信號(hào)進(jìn)行脈沖計(jì)數(shù),計(jì)數(shù)輸出。use 。 clkout1 : out STD_LOGIC。end fenpinqi。signal t1K:integer range 1 to 24000。signal c4:std_logic。 then if t124000000 then 對(duì)t1進(jìn)行計(jì)數(shù),當(dāng)t1未計(jì)滿后對(duì)其進(jìn)行加1 t1=t1+1。 end if。139。 end if。event and clk=39。 t100=1。process(clk)is begin if clk39。 elsif t1=24000 then c4=not c4。end process。clkout1K=c4。USE 。 clkout1 : OUT std_logic。 END COMPONENT。 SIGNAL clkout10 : std_logic。 tb : PROCESS BEGIN clk=39。139。對(duì)該模塊進(jìn)行仿真結(jié)果如下:有上圖可知分頻器工作正常,產(chǎn)生的個(gè)信號(hào)也沒有毛刺,結(jié)果十分理想。use 。 SE100 : in STD_LOGIC。 FREF : out STD_LOGIC。end SELE。039。 當(dāng)閘門控制在第一檔的時(shí)候,令輸出端輸出1HZ輸入端的輸入,小數(shù)點(diǎn)控制dp1有效,dp2,dp3無效 DP1=39。 DP3=39。039。039。 DP2=39。 END IF。039。 第三檔,輸出為100HZ,dp3有效 DP1=39。 DP3=39。end Behavioral。USE 。 SE100 : IN std_logic。 FREF : OUT std_logic。 END COMPONENT。039。039。039。 SIGNAL DP3 : std_logic。FREF=39。139。 END PROCESS。具體源程序即分析如下: library IEEE。entity CONTROLS is Port ( FREF : in STD_LOGIC。architecture Behavioral of CONTROLS isSIGNAL G1: STD_LOGIC:=39。139。 PROCESS(FREF,G1) IS BEGIN IF FREF=39。 THEN CLR=39。 清零信號(hào)高電平有效 END IF。源文件編寫完成后保存編譯并生成圖形文件符號(hào)如圖:仿真文件代碼如下:LIBRARY ieee。ENTITY TBCON_vhd ISEND TBCON_vhd。 END COMPONENT。 SIGNAL CLR : std_logic。 WAIT FOR 100 NS。 END PROCESS。計(jì)數(shù)器: 該模塊實(shí)現(xiàn)的功能是對(duì)輸入信號(hào)脈沖的計(jì)數(shù),并正確的輸出結(jié)果和溢出。use 。 ENA : in STD_LOGIC。architecture Behavioral of CNT10 is SIGNAL CQI: STD_LOGIC_VECTOR(3 DOWNTO 0):=0000。 當(dāng)CLR清零信號(hào)有效時(shí)使輸出為0000,無效時(shí)進(jìn)行下述操作 ELSIF CLK39。139。 END IF。 CO = 39。 and cqi = 9 else 39。文件編寫完成后保存編譯生成圖形文件符號(hào),如上圖: 創(chuàng)建圖形文件t6并按照下圖進(jìn)行連接,保存后編譯生成圖形文件符號(hào)如圖: 仿真文件代碼如下:LIBRARY ieee。ENTITY TBCNT10_vhd ISEND TBCNT10_vhd。 CQ : OUT std_logic_vector(3 downto 0)。039。139。 tb : PROCESS BEGIN CLK=39。139。 仿真結(jié)果如圖: 如仿真結(jié)果我們可以看出,該模塊運(yùn)行正常,計(jì)數(shù)穩(wěn)定,結(jié)果十分理想。use 。 DIN : in STD_LOGIC_VECTOR (3 downto 0)。EVENT AND CLK=39。 END PROCESS。use 。 QOU : out STD_LOGIC_VECTOR)。039。end Behavioral。use 。 S3 : in STD_LOGIC_VECTOR (3 downto 0)。end ADVOCATES。S6(11 DOWNTO 8)=S3。文件編寫完成后保存編譯生成圖形文件符號(hào),如圖:,保存編譯生成圖形文件符號(hào)如圖:該模塊的輸入輸出簡(jiǎn)單,無需仿真。use 。 SE10 : in STD_LOGIC。end POINTCON。039。039。139。039。039。039。 END PROCESS。use 。end CTRLS。139。 END IF。文件編寫完成后保存編譯生成圖形文件符號(hào)如圖:再編寫使高位無意義零自動(dòng)消隱功能的的文件,源程序代碼如下:library IEEE。entity DSELE is