【正文】
: out std_logic_vector(31 downto 0))。entity reg32 isport(ld,reset: in std_logic。鎖存器的VHDL程序: library ieee。此計(jì)數(shù)器是頻率計(jì)數(shù)器的主要模塊,使能端enable的脈沖是由一模塊提供的閘門信號(hào)經(jīng)四選一的四位選擇器選擇出的信號(hào),可選的信號(hào)的脈沖寬度分別為 ,。其輸出CO若有高電平輸出,計(jì)數(shù)器計(jì)數(shù)溢出。其圖如(附圖)等精度頻率計(jì)原理圖所示:(2)原理圖說(shuō)明:計(jì)數(shù)器是由8個(gè)十進(jìn)制計(jì)數(shù)模塊(ctmn10)和T觸發(fā)器組成,CLK作為被測(cè)頻率的輸入端,EN為使能端,當(dāng)enable(EN)=‘1’時(shí),計(jì)數(shù)器計(jì)數(shù),當(dāng)enable(EN)=‘0’時(shí),計(jì)數(shù)器停止計(jì)數(shù)。從而測(cè)出頻率。這是利用層次化設(shè)計(jì)思想,能很好的利用已編譯好的模塊,避免重復(fù)編程,減小工作量。其圖如(附圖)等精度頻率計(jì)原理圖所示:原理圖說(shuō)明:以4KHZ時(shí)鐘為本電路的基準(zhǔn)頻率,基準(zhǔn)時(shí)鐘CLK進(jìn)入T觸發(fā)器(保證與時(shí)鐘同步)產(chǎn)生上述onepluse程序所要的 的脈沖,,。然后由y輸出其選擇的信號(hào)。(2)四路選擇器的程序說(shuō)明:此模塊是為了根據(jù)相應(yīng)的被測(cè)頻率的大小來(lái)選擇適當(dāng)?shù)拈l門時(shí)間,擴(kuò)大頻率的測(cè)量范圍和測(cè)量精度。architecture haves of mux4 isbeginy=a0 when s=00 elsea1 when s=01 elsea2 when s=10 elsea3 when s=11。 y :out std_logic)。entity mux4 isport(s: in std_logic_vector(1 downto 0)。 (1) 四路選擇器的VHDL程序:library ieee。閘門是由控制器控制一個(gè)四路選擇器,從而選擇實(shí)際信號(hào),作為取樣脈沖。脈沖取樣器的波形仿真: 脈沖取樣器的波形仿真圖(3)仿真結(jié)果說(shuō)明:該程序所產(chǎn)生的輸出脈沖blevel恰好是輸入方波apluse 的一個(gè)周期,且方波apluse 須與時(shí)鐘clk保持一定的同步,這樣才能使輸出達(dá)到所需要的要求。end s_machine。039。139。end process。 end case。 then state=third。 when third= if apluse=39。 then state=third。 when second= if apluse=39。 then state=second。 then case state is when first= if apluse=39。event and clk=39。)then state= first。 begin process(clk) begin if( reset=39。architecture s_machine of onepluse istype state_type is(first,second,third)。 blevel: out std_logic)。use 。計(jì)數(shù)器的仿真波形如下圖: 計(jì)數(shù)器仿真波形圖計(jì)數(shù)器仿真波形說(shuō)明:計(jì)數(shù)器的復(fù)位信號(hào)(reset)為零和使能信號(hào)(en)置一時(shí)鐘的上升沿時(shí),計(jì)數(shù)器開(kāi)始計(jì)數(shù),當(dāng)計(jì)數(shù)達(dá)到九以后且在時(shí)鐘的上升延,co由低電平變?yōu)楦唠娖剑捎谛盘?hào)的傳輸延遲,co產(chǎn)生了延遲。end decade。end if。if t=1001 then i=1。 end if。 else t=t+1。139。139。elsif clk39。139。039。139。139。beginqt=t。architecture decade of ctmn10 issignal t:std_logic_vector(3 downto 0)。 qt :out std_logic_vector(3 downto 0))。entity ctmn10 isport(en,reset,clk: in std_logic。use 。分頻器由3個(gè)十進(jìn)制計(jì)數(shù)器和3個(gè)脈沖取樣器實(shí)現(xiàn)。 等精度頻率計(jì)可以由分頻電路、閘門、計(jì)數(shù)器、鎖存器、顯示電路和控制電路六部分組成。再在外部擴(kuò)展信號(hào)采集和相應(yīng)的數(shù)碼顯示電路,就可以完成一個(gè)相對(duì)簡(jiǎn)單的等精度頻率計(jì)。以上的各功能模塊都是在FLEX10K10中,用VHDL予以實(shí)現(xiàn)的,較之以往的傳統(tǒng)型電路更為簡(jiǎn)單,更易于實(shí)現(xiàn)頻率計(jì)的小型化、微型化甚至芯片化設(shè)計(jì)。脈沖信號(hào)由fsin引腳輸入到trl模塊,由clr引腳和fdiv輸出信號(hào)q共同決定fsin的有效性,并由td實(shí)現(xiàn)自適應(yīng)控制,當(dāng)fsin的頻率高出或低于某個(gè)量程,trl模塊會(huì)根據(jù)具體的值選擇相應(yīng)合適的量程(本設(shè)計(jì)共有分為1~9999Hz、10~、100~、1M~999M等四個(gè)量程)。圖3是本設(shè)計(jì)的頂層示意圖。系統(tǒng)在兼顧測(cè)量精度和測(cè)量反應(yīng)時(shí)間的基礎(chǔ)上,實(shí)現(xiàn)了量程的自動(dòng)轉(zhuǎn)換,測(cè)量可以全自動(dòng)地進(jìn)行。由圖可見(jiàn)輸出為方波,二者頻率相同,頻率計(jì)測(cè)得方波的頻率即為正弦波的頻率。電路形式采用由555定時(shí)器所構(gòu)成的施密特觸發(fā)器。系統(tǒng)的工作原理是,被測(cè)信號(hào)經(jīng)整形生成矩形波輸入到控制核心芯片F(xiàn)PGA的計(jì)數(shù)模塊,計(jì)數(shù)模塊根據(jù)所提供的矩形波上升沿計(jì)數(shù),計(jì)數(shù)時(shí)間則由選通時(shí)間控制部分決定,根據(jù)頻率所處的范圍來(lái)決定檔位;將計(jì)數(shù)的結(jié)果給顯示電路,通過(guò)掃描,在數(shù)碼管上顯示頻率的大小。圖2控制的核心芯片是FPGA,它由兩大功能模塊組成:(1)頻率計(jì)數(shù)模塊,包含兩個(gè)部分,選通時(shí)間控制部分,可改變選通時(shí)間;計(jì)數(shù)部分,根據(jù)選通時(shí)間的長(zhǎng)短對(duì)被測(cè)信號(hào)正脈沖進(jìn)行計(jì)數(shù);(2)掃描顯示模塊,對(duì)計(jì)數(shù)的結(jié)果進(jìn)行掃描顯示,從而完成整個(gè)測(cè)頻率的過(guò)程。測(cè)量的實(shí)際閘門時(shí)間與預(yù)置閘門時(shí)間可能不完全相同,但最大差值不超過(guò)被測(cè)信號(hào)的一個(gè)周期。M/T法的核心思想是通過(guò)閘門信號(hào)與被測(cè)信號(hào)同步,將閘門時(shí)間t控制為被測(cè)信號(hào)周期長(zhǎng)度的整數(shù)倍。這兩種測(cè)量法的精度都與被測(cè)信號(hào)有關(guān),因而它們屬于非等精度測(cè)量法。M法是在給定的閘門時(shí)間內(nèi)測(cè)量被測(cè)信號(hào)的脈沖個(gè)數(shù),進(jìn)行換算得出被測(cè)信號(hào)的頻率。由于計(jì)數(shù)器計(jì)得的脈沖數(shù)N是在1秒時(shí)間內(nèi)的累計(jì)數(shù) 所以被測(cè)頻率fx=NHz。閘門電路由標(biāo)準(zhǔn)秒信號(hào)進(jìn)行控制,當(dāng)秒信號(hào)來(lái)到時(shí),閘門開(kāi)通.被測(cè)脈沖信號(hào)通過(guò)閘門送到計(jì)數(shù)譯碼顯示電路。時(shí)間基準(zhǔn)信號(hào)發(fā)生器提供標(biāo)準(zhǔn)的時(shí)間脈沖信號(hào)、若其周期為1s。等精度頻率計(jì)測(cè)頻率的原理框圖可示如圖1(a)。 頻率測(cè)量眾所周知,所謂“頻率”就是周期性信號(hào)在單位時(shí)間(1s)內(nèi)變化的次數(shù)。(3)對(duì)于脈寬測(cè)試功能, us~1s, us。 第三章 等精度頻率計(jì)的設(shè)計(jì)原理 設(shè)計(jì)要求: (1)對(duì)于頻率測(cè)試功能, Hz~200 MHz;對(duì)于測(cè)頻精度,測(cè)頻全域相對(duì)誤差恒為百萬(wàn)分之一。 (6)硬件描述語(yǔ)言(HDL) Max+plusⅡ軟件支持各種HDL設(shè)計(jì)輸入選項(xiàng),包括VHDL、Verilog HDL和Altera自己的硬件描述語(yǔ)言AHDL。 ?。?)豐富的設(shè)計(jì)庫(kù) Max+plusⅡ提供豐富的庫(kù)單元供設(shè)計(jì)者調(diào)用,其中包括74系列的全部器件和多種特殊的邏輯功能(MacroFunction)以及新型的參數(shù)化的兆功能(MageFunction)。 (2)與結(jié)構(gòu)無(wú)關(guān) Max+plusⅡ系統(tǒng)的核心Complier支持Altera公司的FLEX10K、FLEX8000、FLEX6000、MAX9000、MAX7000、MAX5000和Classic可編程邏輯器件,提供了世界上唯一真正與結(jié)構(gòu)無(wú)關(guān)的可編程邏輯設(shè)計(jì)環(huán)境。在Max+plusⅡ上可以完成設(shè)計(jì)輸入、元件適配、時(shí)序仿真和功能仿真、編程下載整個(gè)流程,它提供了一種與結(jié)構(gòu)無(wú)關(guān)的設(shè)計(jì)環(huán)境,是設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程。(d)布局布線邏輯綜合器設(shè)置布局布線約束條件FPGA廠家工具EDIF網(wǎng)表(netlist)調(diào)用模塊的綜合模型SDF文件(標(biāo)準(zhǔn)延時(shí)格式)HDL網(wǎng)表(netlist)下載/編程文件(e)后仿真(時(shí)序仿真)測(cè)試數(shù)據(jù)SDF文件(標(biāo)準(zhǔn)延時(shí)格式)FPGA基本單元仿真模型測(cè)試程序(test bench)FPGA廠家工具HDL網(wǎng)表(netlist)邏輯仿真器 Max+plusⅡ概述 Max+plusⅡ是Altera公司提供的FPGA/CPLD開(kāi)發(fā)集成環(huán)境,Altera是世界上最大可編程邏輯器件的供應(yīng)商之一。(b)邏輯綜合設(shè)置綜合目標(biāo)和約束條件調(diào)用模塊的黑盒子接口RTL代碼邏輯綜合器HDL網(wǎng)表(netlist)EDIF網(wǎng)表(netlist)說(shuō)明:“調(diào)用模塊的黑盒子接口”的導(dǎo)入,是由于RTL代碼調(diào)用了一些外部模塊,而這些外部模塊不能被綜合或無(wú)需綜合,但邏輯綜合器需要其接口的定義來(lái)檢查邏輯并保留這些模塊的接口。FPGA廠家工具指的是如Altera的Max+PlusII、QuartusII,Xilinx的Foundation、Alliance、。如今,隨著FPGA向更高密度、更大容量、更低功耗和集成更多IP的方向發(fā)展,系統(tǒng)設(shè)計(jì)工程師在從這些優(yōu)異性能獲益的同時(shí),不得不面對(duì)由于FPGA前所未有的性能和能力水平而帶來(lái)的新的設(shè)計(jì)挑戰(zhàn) . 基于HDL的FPGA設(shè)計(jì)流程(1)設(shè)計(jì)流程圖(1)設(shè)計(jì)定義(2)HDL實(shí)現(xiàn)邏輯仿真器(3)功能仿真邏輯綜合器(4)邏輯綜合邏輯仿真器(5)前仿真FPGA廠家工具(6)布局布線(7)后仿真(8)靜態(tài)時(shí)序分析邏輯仿真器(9)在系統(tǒng)測(cè)試說(shuō)明:邏輯仿真器主要指modelsim,VerilogXL等。 FPGA配置模式 FPGA有多種配置模式:并行主模式為一片F(xiàn)PGA加一片EPROM的方式;主從模式可以支持一片PROM編程多片F(xiàn)PGA;串行模式可以采用串行P