摘 要:采用Nios Ⅱ作為系統(tǒng)控制單元,輔以適當?shù)能?、硬件資源完成以FPGA為核心的等精度頻率計設計。利用FPGA對同步門的控制,使被測信號和標準信號在實際閘門時間內(nèi)同步測量,實現(xiàn)了等精度頻率測量,提高了測量精度。利用Nios Ⅱ技術開發(fā)的頻率計具有硬件結構簡單、性能穩(wěn)定可靠的特點,并且可以靈活地實現(xiàn)定制應用。
關鍵詞:FPGA;Nios Ⅱ;等精度;頻率測量
中圖分類號:TP274文獻標識碼:A
文章編號:1004-373X(2010)05-084-02
Design of Equal Precision Frequency Meter Based on Nios Ⅱ
WU Aiping,F(xiàn)U Qingqing
(College of Electronics and Information Engineering,Yangtze University,Jingzhou,434023,China)
Abstract:The equal precision frequency meter with FPGA is designed by control unit Nios Ⅱ in the system,which is su-pported by appropriate software and hardware resources,the system controls the synchronous door through FPGA so that the measured signal and standard signal can be measured synchronously at the real gate-time,so the equal precision measurement is realized and precision is improved.The frequency meter system based on Nios Ⅱ technology has features such as simplified hardware structure,stable and reliable performance,it can be achieved at custom-made applications flexibly.
Keywords:FPGA;Nios Ⅱ;equal precision;frequency measurement
0 引 言
在電子工程、資源勘探、儀器儀表等相關應用中,頻率計是工程技術人員必不可少的測量工具,頻率測量也是電子測量技術中最基本最常見的測量之一。不少物理量的測量,如轉(zhuǎn)速、振動頻率等的測量都涉及到或可以轉(zhuǎn)化為頻率的測量[1]。傳統(tǒng)的頻率測量方法有直接測頻法和測周法,在一定的閘門時間內(nèi)計數(shù),門控信號和被測信號不同步,計數(shù)值會產(chǎn)生一個脈沖的誤差[2]?;趥鹘y(tǒng)測頻原理的頻率計的測量精度將隨被測信號頻率的變化而變化,傳統(tǒng)的直接測頻法其測量精度將隨被測信號頻率的降低而降低,測周法的測量精度將隨被測信號頻率的升高而降低,在實際應用中有較大的局限性[3]。為適應實際工作的需要,本文提出一種基于Nios Ⅱ的等精度數(shù)字頻率計的設計,以Nios Ⅱ作為測量控制核心,利用FPGA(現(xiàn)場可編程門陣列)實現(xiàn)門控信號和被測信號的同步。基于Nios Ⅱ技術設計的等精度數(shù)字頻率計不但具有高度集成、小巧輕便、便于攜帶等特點,而且具有較高的測量精度,在整個被測頻率區(qū)域能保持恒定的測試精度。
1 等精度頻率測量
1.1 等精度頻率計的測量原理
等精度測頻基本原理是利用控制器產(chǎn)生一個軟件閘門信號(預置閘門),由軟件閘門信號和被測信號共同產(chǎn)生實際閘門信號,實際閘門信號和被測信號同步,保證實際閘門時間是被測信號周期的整數(shù)倍,消除了對被測信號產(chǎn)生的±1周期誤差[4]。等精度頻率的測量原理如圖1所示[5]。
圖1 等精度測量原理圖
1.2 等精度頻率計的測量誤差
實際閘門信號由軟件閘門和被測脈沖信號共同決定,利用被測脈沖信號的上升沿觸發(fā)產(chǎn)生[6]。在實際閘門時間固定且為被測信號周期整數(shù)倍的條件下,有T=NxTx,Tx為被測信號的周期,是待測量;Nx為在實際閘門T內(nèi)對被測脈沖的計數(shù)值,其測量的絕對誤差為0。標準脈沖信號頻率為fs已知,在實際閘門T內(nèi)對標準脈沖計數(shù),計數(shù)值為Ns,時間為T′=NsTs。由于實際閘門信號與標準脈沖信號不相關,Ns的計量有誤差,ΔNs≤±1,導致T′≠T,相對誤差不大于1/Ns。由此可知,相對測量誤差與標準信號fs頻率有關,而與被測信號頻率的大小無關[7]。
2 FPGA內(nèi)部設計
2.1 FPGA內(nèi)部邏輯模塊設計
FPGA內(nèi)部邏輯模塊設計是本設計的核心部分,它包括利用硬件描述語言實現(xiàn)的數(shù)字邏輯模塊和Nios Ⅱ的定制以及其中的軟件設計,數(shù)字邏輯模塊利用VHDL語言編寫,邏輯模塊有同步模塊、計數(shù)鎖存模塊,內(nèi)部結構框圖如圖2所示。fs為標準脈沖頻率,fx為被測信號頻率,GATE信號為預置門閘信號,EN為實際門閘信號,作為兩個計數(shù)器的控制使能,Ns為標準脈沖計數(shù),Nx為被測信號脈沖計數(shù)。同步電路的設計是等精度測頻的關鍵,在門閘時間內(nèi)保證是被測信號周期的整數(shù)倍,設計時利用被測信號的上升沿觸發(fā),將預置門閘信號在上升沿時輸出,用一個D觸發(fā)器即可實現(xiàn)。計數(shù)器1和計數(shù)器2分別對標準脈沖和被測信號脈沖進行計數(shù),門閘信號EN作為計數(shù)器的計數(shù)使能,高電平時允許計數(shù)器計數(shù),低電平時計數(shù)器保持當前值,門閘信號的下降沿鎖存計數(shù)器的計數(shù)值,待Nios Ⅱ讀取后發(fā)出清零信號CLR,計數(shù)器清零。
圖2 FPGA內(nèi)部設計邏輯模塊圖
2.2 Nios Ⅱ 定制與編程
Nios Ⅱ是Altera公司于2004年5月推出的新一代32位RISC嵌入式軟核處理器,用戶可以根據(jù)需要自行定制[8]。在Quartus中啟動SoPC Builder,添加CPU和外圍設備,外部設備有定時器、2個32位的輸入端口、2個1位的輸出端口、LCD端口和SDRAM,圖3是構建的Nios Ⅱ模塊,圖4顯示了完整的系統(tǒng)配置及其地址映射。定制的Nios Ⅱ 模塊是控制部件,相當于一個CPU[9],負責定時發(fā)送預置門閘信號,讀取計數(shù)器在實際門閘信號時間內(nèi)計數(shù)的值并按照公式fx=fs#8226;Nx/Ns進行計算和顯示,在讀完計數(shù)數(shù)據(jù)后發(fā)送清零信號。
圖3 Nios Ⅱ構建模塊
圖4 系統(tǒng)配置及其地址映射
NiosⅡ軟核是系統(tǒng)的核心,Nios Ⅱ IDE是Nios Ⅱ系列嵌入式處理器的基本軟件開發(fā)工具,相應的函數(shù)豐富,語法簡便,采用文件操作的方式訪問系統(tǒng)外設,設計人員可以根據(jù)系統(tǒng)的硬件結構十分方便地設計系統(tǒng)的軟件[10]。Nios Ⅱ的開發(fā)是在Nios Ⅱ IDE環(huán)境下進行,利用C語言編寫,Nios Ⅱ完成的主要任務有:預置門閘信號的發(fā)出,門閘信號由定時器控制;讀取FPGA中兩個計數(shù)器計數(shù)的值Ns,Nx,按照公式Ns/fs=Nx/fx計算顯示fx;發(fā)出計數(shù)器的清零的控制信號,待讀取數(shù)據(jù)后清零。程序流程圖如圖5所示。
圖5 Nios Ⅱ 軟件流程圖
3 結 語
基于Nios Ⅱ的等精度頻率計的設計,充分利用FPGA內(nèi)部硬件資源,在FPGA內(nèi)部構建Nios Ⅱ,采用VHDL編寫底層模塊,C語言編寫上層應用程序,大大降低外圍測量硬件電路的復雜性,使電路結構更加簡潔,提高了頻率計工作的可靠性。
參考文獻
[1]楊煥崢.嵌入式高精度數(shù)字頻率計的設計[J].長沙航空職業(yè)技術學院學報,2007(9):64-67.
[2]孫傳友,孫曉斌.感測技術基礎[M].2版.北京:電子工業(yè)出版社,2006.
[3]李寶營,趙永生.基于單片機的等精度頻率計設計[J].微計算機信息,2007,23(9):152-154.
[4]白海成,陳星.智能等精度頻率計的設計與實現(xiàn)[J].微處理機,2005(12):87-90.
[5]殷鑠.基于EDA技術的新型頻率計設計[J].能源技術與管理,2005(3):70-71.
[6]趙茂泰.智能儀器原理及應用[M].北京:電子工業(yè)出版社,2004.
[7]周航慈,朱兆優(yōu),李躍忠.智能儀器原理及應用[M].北京:北京航空航天大學出版社,2005.
[8]任愛鋒.基于FPGA的嵌入式系統(tǒng)設計[M].西安:西安電子科技大學出版社,2004.
[9]He Anhua.Application of EDA Technology and μClinx Operating System in the Earthquare Precursor Instruments [J].Earthq.Sci.,2009,22:101-106.
[10]周立功.SoPC嵌入式系統(tǒng)基礎教程[M].北京:北京航空航天大學出版社,2006.